{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "前几节介绍的LeNet、AlexNet和VGG在设计上的共同之处是：先以由卷积层构成的模块充分抽取空间特征，再以由全连接层构成的模块来输出分类结果。其中，AlexNet和VGG对LeNet的改进主要在于如何对这两个模块加宽（增加通道数）和加深。本节我们介绍网络中的网络（NiN）。它提出了另外一个思路，即串联多个由卷积层和“全连接”层构成的小网络来构建一个深层网络。"
   ]
  },
  {
   "attachments": {
    "image.png": {
     "image/png": "iVBORw0KGgoAAAANSUhEUgAAAvwAAAG7CAYAAAC/7UHGAAAgAElEQVR4Aey9XWidS3cf/kveNLQvDSE4wlhgkG1BjYpzEK548ceFbXZAfwmkC7tX1Y4qm8AOIrWiiKpgqS+J7AsF17FJRAUvtlG3elFyDLHBqiDi2BdHNgfVFSeiQgHbR0FUruMYeld4b/xnrfl41swzz7Of/SHL9hmBveeZjzUza2bWWrPWmplf+fDhwwfEv4iBiIGIgYiBiIGIgYiBiIGIgYiBLxIDv/pF9ip2KmIgYiBiIGIgYiBiIGIgYiBiIGKAMRAF/jgRIgYiBiIGIgYiBiIGIgYiBiIGvmAMRIH/Cx7c2LWIgYiBiIGIgYiBiIGIgYiBiIEo8Mc5EDEQMRAxEDEQMRAxEDEQMRAx8AVjIAr8X/Dgxq5FDEQMRAxEDEQMRAxEDEQMRAxEgT/OgYiBiIGIgYiBiIGIgYiBiIGIgS8YA1Hg/4IHN3YtYiBiIGIgYgB4/2gGPX0zePg2YiNiIGIgYuDHiYFfafU9/Btzw7j8mJBZwr2lXrwen8B2eQFX21cwNvIGV5bKOBHANZW7e/gmbh9eRs+zk1gb7Qrk8qM2cafvATruT2PwoJ+W8/12BWOzwPStEg7YbO/wcHwCT87dxO2BNhVL+UaqQEXE2fyNBxhHmEz6yPU8x3nbj0BbZHXrVfRcWwH6J7F2+oUKy3Qb7sSUhUm4msWiTasdGLqxgKvdOh/XCdxLjV/tMbBja/AqqlbzheZKeF6YrMSwe5+ewrIzZiY151eP4SqAM3WMYyvabFvFbcie+yqfGnNeK4Rz0W4Lxw/Q+Mt1khojGpsXuCBwm4VHjp9/6deQ+vZxqMYvlS074njZGcNQezhu5yLWLu0G1imB3sSd8V0M0VyQuKWwWdeEi+ohpy6nUR6u8vrv99mBU+eH7ZsZN26/XPtm7GvNF40Hb3zrbE6N7E3MSTkWtpYAXeP+t47G1j0fTdu8eWmim/1V8wqCDjcLsXXl8+Z8Xi2560GP56pPmxyANA+WcfRWmuan1odTznx489JE06+u/4jkXTKdaEfkg4mM4+Am/bFffPD6VrotCK1Rh85788LMxQAoG+XPU48vMK/xaCzP0YAsUnQ95a4f27A9CpDA39Tf//wvH/7V//d79t/Vh//ggPvbv/y9D7f/54cPH/7PP3z467+kfH/64a//j5Plw4cP/+vDbRv/Dx/++o9+74OCQ/EJbFXPf/nwt6Y41f1Hf/PhH823/Q2Vc+v+x4d/qsuq+mQfMsN/+b9sDc0GCC//SsOT4Q8fVHsYZ6ISbq/BhexzLg4krgknAncCdjqYbgO10R9bKsftysWLHFu3Jttv6kMuDFXO5nfBpL+cOSlx8OHDBydNzi2JmybazPAlLJr7f/Phagr3gTo4X6C9/njTPMjCF9dvYMgxp/DvZayXIuOo8vhzwJ8XNB9sHmqL33b57ax7M4yqnWb++/BNLopXdMXg1p2zNt0UcH7dvJTktFvkzYoXWTKDvDa8cec4f+zk/LBz4B8+/GOKTvpVyfH101r0bdsj4IXGNTAnua883grfmXTV0LUADFHrpx1kPEl6UiRs1qlef95c2a8OJ+NWZws0Dq4+/BumNZYOBMAE10EG70sXT69fmScM2+SoZ82k68miR/l1Ut1UbzLepjX0SzCZntO68mmDzKjDNn8gzYliXmDmoVe3k2by0K/kXU20meFLWEX5YBrn3CeCZ3hHVpgyNkGvLO647QZfcr5QuPU81Nb7EQK/1vQ+oruMtaUyg+HdYBbAg20YHF3A2cMz6J1dwVmpqV1/gcX+i1hjLX0bBm9NYrtvGRsDZVxdWsBVA5N3bG/01zs8rK4AW0BvX9Xk0JaFk/pXahCUJtpkPDBQwdTTCSyul3D11gIGTQK8XaKNb03A1UDNooetIQRbhgFcG1baeLOrHZjG2gAA3tG2pi2FoDi75An0zKtSapf6DousFfbaDmVZOPq1sfYAGBnGdSqqd9SEh29OL2CNLQhdWEMVPXNwNdZeA0+M3sTU+ATGHtWwuNg56Y65BWdwaiOUJpw+nfFpQZttFUUCB0u4feMNer7exKDWAL9v78XyuflkjhP+9HqzIJ0xUrHXTdsBLPat2KzYqmpY0vqjkx/745gUM6EzFRMK/+7uvAQOh9NSsc6616kUR+OjLUsnLpWB2e/xfkBa44ATo5P4Zm4TuGTKLSvrHJfbxDePgcXHeg2ZivXce/9o3uZVWpkOTNXolwFR+He9qixSS6rdrvZH4flMpYwj81VrdVsV47Q6MsFVkZVtaGcGvTnWF2d8RQNboklqdE4C2C8ayygIrAmBGht0rJg2ttFAbUtlAtmlTQcGprGMGfTObebSwKT8XoXe4dunLzFUnhbW7wJ1sWZ0JbGiDrTjTt8ExhCm1Tw3xidwZ30BF54JPkFVGd7nVZs1Vg7NtmVcWpZV1mavFXDmU+SD9fLuWugNp6s1wh4c4Qzp2EbplTO+Cux+8dB0p1oX07zAX6AtP+y8A7qVmwwRNhZcbTkluA+V1aaBGSOZ832hxubXgbff48mWIrDtj2Ywg4owU23iGz9/6ps2Fgs6Vgn5jhnJIzotYZ4gQWUBa6OmMapex43IJO3J7wouC6GiVhVDNoPLyIjA3mXheBaLvkmMTaYPuCT1dflwemzu9GlBzBPIhvqBnvHdbDcMtOHsuU5cn1ebwZBrmG1yg4HWt7nOhtBmRQutQdOzFMqdjYs7Rvm1usKGzZsaS5vCAVqbM25UE1+07rcxNVnWZnhya6kAwU18sqmndTiNeSsAL+oN8+o1asoKep6WsVx+48xLS1NoE/V2BTNPT2H6VpsKz7/E0I1pnN2ZwZMmeuMW3cSda9uYul+2QpOheyycSHe+gZJVaDjtlAC7fZpJiYJmOfNAFmxRuOE5uT80Nul13prQip0kc3MhEjSWEhChsWS6SW6r7NrYhatLrtvqgYGLGOp7gIeXuupzUU2qrTMk5pBf0uN/Njkw15TATQqEBdFu6t9NdpPlNSkVfAysDYPlEnqebeKq5okufmyNToDxaja/3EZV79qlgMswC3Eh17jIBx2kBj72nQ8G2lQ4qmF6lUcv/No/BR7qt6n2d5MCf4hgJLvfpPpAnCEc68sgQTsRLpNS2aF3eDir/D5J6HufnTGYoggUJblaziwtABGZVgg6DrGSLdsK4Eem91cw9Wqe8WSilVWjhHs3TEyR33omtIaXdcjt6Twu84bLZVpuK0hbBJwvf4+xvje4cv8Q7vI5DmG1cQvgKmmKxlcyhH6lfQJe4u6jXrHBc4Ek46vjrba7CL5a3Wa3bVlfSZvlnBRhn3kFLT1EhGqd0yCYF8PNkJuJcA7U0vBTsSOH9RmYDBgUrbTsFdw+SFYVtZbPfjePXqIF1v9WC2V0Bkhr/BVIJQCzgIAS8HhbnH8hHFSB44fwHl1W4D6j2/T+u+dY3XppLSa0gSDY73eA1fnwOizSZ9nV948eCIulTFGWB/TLuMbCG3N03qiMoa036Dj3HDOPvspcD43VIK1dYh5KmpkzJ8PzWY6t26pW0VgXam3Brj6+40KXX2Ha7mqZVX53jrmKpC5c6J/FZWHhk3XsVThZb0qIsWficsaX26K1+my19TYvqq1qw3eWzl/1VcW61j2xgpnyvb/7uIQrS0Q7stY9WY1o7YfSyTpKVmJtIeG2q7MxacVQ5IO15Yb94YPNzPEwzRG0q9Z85so/DR7aDB7yyjYp8KsFbdxhmAFbDYaqVhFyqX2XzdFuOTKqUNitty43AqtlV8RNVreYpdXgA58yZ2Nho+VTpdXE+sE7SMqMgywc5lCfreoUux3xpH4lDj6uS3cmmzk3kCyMnGw1tL04V8EaaUnz/mgzh1NYbofSnrK5rYqevmFbymV4ac2ozUgBtup0YurGKTy5lq3lt1YUZkikaRWHumvhqyVtDgsa0mVD9asTU7qDqs3+nHwJaVakrA6M48oqBqtdJMtWHjMz8EPaxZAWWTeu8M87vH4F4HTtArRmVx9r4Yfm2sA73OmrfWiYIJv5S4LKbboM4PGKi6f+EoYev8EuuZVAbRKPlD0LI2+YDmFaHCR356LqQ/2CqKpvqBzYCL/dxQ8EljZWvIa/wrfjE85G3nHtM0oRD53UpstkJRgA7sy/wdGBCjA+j4c/E/PcK9PIZzNzMlwW2Gsaa/vJa6JkP/c64NJ2dStQr0fHQ/zRb9eJ0yWguutsVv08n8K3WoOkQCnh8rXQxsZt5ZnKJDqqw+iplvHnx6r4I7bMJcLYxteJAs8tWeOLhbgq6FIG9bci3GSBVaPsCfAzQ0dMyeBvoJyTL/JBjY4Q766fDzq45Y8OHCVXbyLmNf7CNOdz46E1OtlkcpMCf7h2FlrJ7EaL5XQHVp+9A6CFQ2K0+hYe0vJdRwlDx4WPcRhkKja9WBPNydCNyVT+IhGJpsPNXT/Td8unvgyRYkHHFZqJcdybG0bPnHcDCwPZxOtXnVB+2G+Sm22sX7ZfUyJQwggbdsPj5837Ti9cpfUMaVoSOO93toGtFfSOqDgSVof6S9aPn84jjO3ocwk8J5KyoRAxBbr94XZ3F472D+dq+VlLRO4hAK6PzABS6A8B13FNt5m0Vr47mq9Z4LqM8J3TmILaVBdCeqzcdDEnWNOe7x/ulhVfIUbI1roS7jnaeFFGBBPi/AIXaHO7XsUPlUlMPZ3FdX/jLb55jRq3OKIlI3Rz1AJuC9g89q8m8M16GSe632F7qxMd7TIDMScq554LkDkaD4fqU9BYqDneCRy7iOXDD9A71441cX6I6aYnJPrt4Dx8QwRtKDZ1MilALuIOXTtZcJ77cIt/J0KauhFFuEzwJiof0t7TWEWTHPfM/CYFznvVLJCRQSlxkpvQQoKw4lOhzSUDbT+EM1tms5pRzScQrdavaohL7wgH7s1gtrkD5qxcCWujkv4py9cqEh7OZcS6963xlM6bR6JDS8Y1VysDpMucrVwHIh8Ublc+cpLvT4IPirFKWlZvqBF6tY88tN7u1Zm/RQK/JHQTmKncxBqb5kgru4szr5TGAmTamwembvSyG87uTgfu3aKrO1ewXWfDJcFJM8pN3KkTHmX/GNonbuv8S5whxp/pQlHCUP8sevpcbe37Ry+Acx0ATmHqWBWX505ijbSpQU2gJKgNIMMp4raDNVWcToLGJMgnf8xYKniRduDCQWN+NVelacFgvYpFoRE6U+l1asr8eLuCu49p8SrNKR/mHMnRarKmvhNnAJwni4AR+jMrUAlWUyeF9DrazBvRPIZj61fm+7vfvcOg0DLbZA4U1E7YQqS5l+5SOcxXl7H9tTBMIH8zZ3LZX8LXtRU221sTencvpqoTifsMzXkc0kXU/CT3Ac7fXcbt7nd4+FS6fYTb4G/25bkUJVDqsx7PNjG08wCLx09hWVzbuzH3AB2VDlzWliYq0yrXDrWxVvPf4oYDJNSUcL6yjdUdfaB1fBkb6ApeU+yWVV+q37QWQxuVLly9v4uxkWFsW5eoEJRm4+qdk259H4PGUo1ZGwu3NQltSsU3HCEEjAwYxAMyXUQPtuMInuP1W+CEmLMZoL6QaJ9uhdc9dVau/dQYezyi9ciJfLAo724tH2xmJOulV/5c/Ig8tJluFizbtMCfMKEFXDB36UsBhgjY1mzwZpADo+SS8A6vCzY2nE2Z0LE1izunfV/fcIms2BQB0RlzCXQWsEB8gqtpnGBtWOBeeS1oXhhdwFU6iNQ3zFptOui7+PQQhsrqlqKzfGPNPB5emsbarUBl8Nw2dt9g9fghnLfvJITKeHG0kahpLKF6SOifwJ3D9N6CByP0abTDRsMfyuPEqTMbrN03TPBgCdOV5+gN+ruag+CTwLUHQLu+/YZuh9JeMA74Ih91t7kI0Fp5hPAgNyBUzNem0je9zRD4C93iktYwZjPZAEg3amcZY/MrSN997breyTaznzteJrc38ab1K4abEgqFpo/XqD4M7rhMmHWjrQvqAOQsaDtJh3LtexssFLzEKt0KJiwxrfThd5Gjvqi/P1QqGIK+5gqEm6KTUY3NdX1Jgd1Q+RWRG8t9sNBvN+B+nqa/65iTgbr2msa6VRq8ubHqyxXeQjlaEsfrNOc9iJZUsl9AsvGbpjmtwbdS9GlaRd0O0D3rxiPRYuh35IPo+Vz4II1V/0nPeisHtUi4DnoVmEumhvR8Dr3ro+dl6syZgbL/v00L/FLTvpHXH6mFbiURNG4EN4DL12bqf4RLtDklaIi0eg/uiaI2KHFlI/2AJkjTFC/8UGnTAb4qzfjsk8DAudQtJ+bBIe2m4d5aRIcSt3HmXC8GB0oYNLcE8QQXj2mtr+Bhe8k1+b0NC5Fus9WumOOyDvlCmcnYpUdYNopo+JXrVxnL3rkGc7Wbf02nzd8Ne+UhzAGxWj78Tscab7MD5mN9yDXGdYa1E7TxpFuWnD+zjjx3nOCaMMzTADjci9tCeDbReb9hywK5/kntbBYB3bTXwapNvnuIX9VLFhS6mrOEC7JPYk357UtvgpQvdqY21gdgv7dTGlqyZl4ZbQMe2UyOtjKJ9dxA+idxD7O4jjKWl0ogK2mPuaVEF5LMiPuwpK5E7NkJuQUmNe1HKDifdENaQWNDfUptMvTmMJS31XHWNYLctzz6FaxLWEiD6Z9UpLeh57aFaU5es5UiLJBDbPQ51ac7FKldKNly7j2GxHGei1zkg/oWuE+WD6o5pQ5u07XrdCZDCe1WsWl4eWDKNB21Xzy06YYXA9C0wJ9dDS18dWMIu68Iv0QmgsdOJlq3bCA1UsgXV939e6K7DcuVGfSOVHF0ie7hr/8vxRg0iLCGX/UPLTGfu5oSYtp02JBe/jUvr5LAcIHv4ff6xcyriiOVmzaBtJtHjMadhR334CJnpHLkNy9uV+AN2+wwxuRrwxZqHYHjh0CKfpeQaw0PuccYlxej4bcL2PgkJ3Ux0Z7vyHBjaMPgZBlPRrR1QQt2uzvA1CS5PaThJZDDoVa0OQy5QCzdQQ/Yg7yhEq/pwKYW+NQ8CeWqNy45PO/ffpS1JuqtISu/Gl91WHfoxk2Qw1rtv8TsSuPVQ1dykjAgLItqHMk1bgWXxwMaVqHNITzqrXPtqmvlOPgVzh+vYpsOmRlrFJ+bUdp8eaOYrwAICSiqugWsmXqda42zhKs2z7WLCjdIr1o8J7Pm017S2PAmo4QrBqep3wZx5VtV6QrYefXGw3U6q6T/aLPLZ05Cii+p8DEFCv022uZCwPc0k78OlLCX8L6alTOeiYao27dojvHd/nwwXh6ej3ywJi51hn3lg/oWN6PkOEDrhA5fhzZ8fodaTK988Nnf+8dDs9uUTtkTgd8wcVp46k5xLfxpxks3dAydlgsx3bBgjEMMSSDW98BrRm8eevlmnQT+0MELc2BRE8cKCYva59XeyZ+u2RJomcSamBKuSO2hTK8Vdg5nBTQlb1f4nQED/wS7P3lAjbCf2nSQP2+ZTft3KA10W07ymJF5fpxuNkge/hKw6ZpQus/c3p2cxmWWNo6vPcQpBmYJeYMaNSO03VuSD6iJdlIw4MZwYlT7hXtZ7WfwkHMJF+SB5gbbzHUIC4at079hRydYPLIAuq1uIDJzUmzGkpt4gEHa+NX7p+eKus2CNCbmsLjebB6bZNcwcs1SY6/ca4pUk3WdZbCsvlnI0AgStu15H9rkVgNnaaSmzxB9K7CrjSS9xdHT9wL3luhMEN18Y1wIetExPoHecaj5bMoRHGGVeC8078F2F45sw9FjwHW6X7y7ARpXuJ46MzZCr5qak58AjdUoytpkZGKwEVxJYGatkbaQ5hhZZ/U5NutaRgqRZys4c46UO8kfxeHYpBOXpOaEmm1zDmgn6Vh7/W1zAOgbjPgsnzhbJTbHXvban8Jqx3TF0ovn+PatsFjzua7IBy1CP0U+aBWFRL/1WSVSCN4/hLGRGm7bTdEri5XsgFnXnKO1PDS70tamNC/wB5Bw4GD6ij8S/uj2GXt/vHErqdEfIxiYbEarSfdQXychxTGTGnMQHdo1DN+UJAakHoTamJuF1czzi4DD6DHZ8n6NsEF5aPPRjH+Z1gTKA4d+1dTXTH9dWhhfVwN+0xoKEUF6tfXZJi5gBUPlBUWoabzI/WdJf/uV6u+NuRlFLPnbxSUJ4tYlxAhQFg4thNChQpuB79iizRq/v3DDPLykr1YjJsl3sw/jMmlozKKXxf0wE/w63BgyzHY+WPd7lzeYeW2m/HaT4xYOfkk8EqMnwWSwGxhkl4w656S1kgSrctzDZA5/HdGh3yF9bzbns8xTlkoOilMszVP1mJCXx/+kuaI90sIuPapALQFNbQRpnomHfljzTWt8Qj26dcsI24omHCXaw24V3i1Kzvz1bgmx7TeboFrzWhWgA+VnRl5gY7T4gVxb1V4FGqBXzcxJckPadxrL5ySSG1wS1KrNiL1Nh27+ShIbou0On2JBX9BXelBr3pxjkxVJoYHi6WA3xZm5K/PWCDcwvmmI3rkvpqukEBjG5S2V27pgOnw/DUm6mclUWtsXyAKrb5PKpXU+7emfVLdbsYWzE1PtvhVZ0SJHgTA+jB79tscForGRDybD8SnyQTpjSB4AUtlFLRabOqmwpCQrE36mPFRu+JPB2ZvQr3z48OHD3oD+sqGysOa9OfBl9zj2LmIgYqAoBlgA9PyHi5bdi3yfI73arzbvV73NzJn9avNezNUIM2IgYmBvMBAF/r3Ba4QaMRAx8KPGgHaVIlc66xr3o0ZI7HwOBpSFgM4q5bgv5pSPSREDEQMRA7UwEAX+WhiK6REDEQMRAxEDEQMRAxEDEQMRA58xBn71M257bHrEQMRAxEDEQMRAxEDEQMRAxEDEQA0MRIG/BoJicsRAxEDEQMRAxEDEQMRAxEDEwOeMgSjwf86jF9seMRAxEDEQMRAxEDEQMRAxEDFQAwNR4K+BoJgcMRAxEDEQMRAxEDEQMRAxEDHwOWMgCvyf8+jFtkcMRAxEDEQMRAxEDEQMRAxEDNTAQBT4ayAoJkcMRAxEDEQMRAxEDEQMRAxEDHzOGIgC/+c8erHtEQMRAxEDEQMRAxEDEQMRAxEDNTAQBf4aCIrJEQMRAxEDEQMRAxEDEQMRAxEDnzMGosD/OY9ebHvEQAYGNuaG0TO3mZEaoyMGIgY+OQy8XcFYXxUbTsPoxeZh3Fl3IuNHxEDEwCeMgU+V//7ap4Azflb86SnnCXqO27mItUu7GJsFplPP02/izvguhiieCOXIG1yhZ8kpbPKvV9FTPeTAdfpL6ddgnzNXz5u/dLKYjzOVm7g90GY+m/q1fRvtUnC4/c9x/v40Bg9q0LJPubVt4k7fC1zY8yfZs+uhyX33cA38EK6fncTa6RfoubaS26NW4jq3orzEWnMnsyzhaRaLmekyoWTnXhJL5R+gw8wFngdVrCYZktDxcsbc3sQ3j4GhG3p+JSWKh0y9/ZNYM/M0VZqEkWUcvVXGCS8tNce9dPVJ5SewXV7A1W4vg67/yI1AGmetB88K9lAmLLdums+XHydxdj4anCRJBUKdmDJjiWb661elYD05V2Pd6WLcJ4ix5L5ImlMDHtPKFYDmQ+4alv3duzHysZF8q35c30pibCi0Xrx1nscDLBwRsHPD4EekFQnWmpMbcxO4fmwSa/76qAXczNUvdf0yvhPenaDDo59Jgg3l8Su19kN02RZ3A4xnLXu4KTW/1FzrCPAAv2hGn7y565dS31TWkw8KlQN8OhiGL2K99cX9q1uuE/DqDuas/SxYgTbPoNKkrNcC/pvV3ibjWyLwN0wkufGbWJwHpu6XcMB2huJeKoHlYBeuHBvGzKOvvEHowoVjs1hcL+Fquyn4Dg9nqzhSXmBYG89WMKTDJkfy+w4PqysggiuFFUvAk4yg/s2I73qChRb1wRJu3wfGRqo4ajYtI8SMK2h/C8BsAuqpuGV5DbG52DhEJs7bmLpfBg52YW2pLGAFCJJOLYQ7AamVwfc72zhzrlfMSYJObQ0I8x7RAHyGEeqjiivWZh8eACbaujTjN7CJujacv/FItVvD08ICKmUMzc9iLHMz14az57bRO7fpbQre4dunLzFUbmLDcbCE6cpz9D7bxNXuLDgBvAQRqhjBtkkzwpD59n6JBqwtJZv792/fqRy0TpdKXm76DI1vIFteVKH+5gHITzsxuoB7bPVRQv/G11Ws9k/iNtMWjZ/yAm4LwdKh6zRXlhRdxfoLIDh3CA8PvIY0OEYelHo/U4K0v14yFEEHBqaxNuDXpvplN+F+Mn13lz26luCUN7MNCIaEf7XxnEWP2ICq6nPw+qWvXwDE22mdSt5NeHn/6AEW+y9iLZNnkjDWifP3k/VthtNuim+8YOtoStHBdDa0yTAQzG+B+QLgwEAFU08ncPdRryfbGDh5v5u4oxVnvX3VJGNqXXbhKvWnb0YoHpLstUJSHqL5aIVhXk9CmSrXFwNtVK6r1aLa6am1n1Uk1WYvI493gK/qbBY3Wfka5b9eM1r52RKBP0wkCzZz/UV6gVIcTVzNfE5cKgOz3+P9gNwUACdGJ/ENuS1c0nWtL4M1XlxO7bIWH3tCj9Z4vH80b/MawXKqUrDNRbOtV9FLO9wl1W6HgUIR8TOVMo7MV61gttqXTLDVkQmuiSbw0M4MeufD1gfKtCjKyebZSSkj6w534OhBwApMQcF3Aj3zBnDCjJSWQGr9TJ7avzSvljETEChrl20uhxJYj5TTTAHw+hIkGiu4HBiP9BiVcEE31J0bAEaGcZ3qunEKQBgeCV385wgbStAoqvlN4UkTLztvBtpxp28CYwhrkplpjU/gzvoCLjxzNePIIHhZBDmsUXKFnayyqX7UjEjmaK2sBw7KeaDwG9Igp8Y3xXzdmj5Wf916JD5lGLDjZdpthN/gHHf78ml+CcGrSANrbATVmvQBJfQgtYYpq7cGJH1na8loF2tSvzm9IBRXWncRvS0AACAASURBVLv6ijZZ057SQc+/YydTwi637Etfv84YJTxH0at3rCiE5q3JSKkxOvq1oE9MX6EsVmIMlCWlC2uoomcOniIjgVhPKDgvJICtpB8ymvp0ZWcisTZSm7X8sjFHVuAFsbHRc33SlZEYHvGHG1X0fL2JwdEukDILOCSrKhTe3XkJHC6UFaQUSG28Csp1BWvY+2wOX02qU+PZgSvG48PJ1yT/TarZk1BLBP7GW0Za9m1MTZYBXshKq43qCrAFODtXJN+0EKYxbwXgRa39WL1GLVlBz9MylstvsCjMmTxI5CJE7glvVzDz9BSmb7WpMFsTpnF2ZwZPGu+MV5J24EqrbSwXZmPEDFia1wdKuKpLO+2UELtDmichfBgmLcu0IkyLFCt2Q8FCDdW1tGDbTP0JuvS8XcHdx0aworbOA5PCbalA+w4MXMRQ3wM8vNSVuDsVKNdYFiKaQoMvmLViKEWhmj6b/ATXM6tqrbDJYeYGa+615uZMpYLB9u/xJGUx8DT8Bgj9ri/j+lYJ92humz9eW7XNzkowJOa4IHDdhatLN9n1htdVyrWuDYPlEnpIEz+6gLVRJawE54NpD2vixAaW8azqXbsk3PNM/sz2Z2yETDnvd8j7bubT3XgExtcTkh2m33B/G2sxafdpXNTfx2ZI+zdGpsf1/fprl0rT+Ao3OwtQxdtPgLXOyvVT4dm6q3lzWNF5VZIUWndHqti4r4Sw149mcJ34wy3gTl9VuGtSfbNKGRZws/vxrF93jJj/kNZ/btbh+Qq7yRjROlg+LLTUnIHStVLQUw4O9QM947sZbpNy1PPDlrbbbPlzw2bjAK1d1QdjYaK5883paVy1Vgw1L3BD0m0XClughPUOx9q9jaSXv6nPxuW6VrlNU/Mdmiv7I+RCGW3Cq/MT6NkR7o8mwcIkj5S0Gytna4L/imr2LLivAr/SslfYrLwxVwUqN3H2u3n0bpH/sfHd9RaHRYUSgNViLwGPt4UPPC2AKnD8EN6jy07sM4eVEPT+u+dY3XppNxQkzJHZ9f0OwINtNdW2MpypU/ufbVpUlgf0J7AbDZF/55NzZQxtvUHHuecBt6dGISflyHSqNFHEfHyhNckXDLELhEqhsb5+LM/UGoQAoAsX+mdxWWsnsnK1Jp6E2wVcJeZszoEwIxnG3boqCAs5KQ0wEg2/Av8OD3eAIXSi434FmJ3AHZAWPwzPavhF27JM3SJLOqi1gjzOSyH3mTYM3lrA2UczvGaStalBkYbDMBO9ybvCLjFZa5fM2bR+Q+kl3CZtlHETYkFJ+Zr75vu061S6a9kxGTjNKlCDSWQVM/Gt6a+Blvxm0ytlkclkehlaRQu5v4KpV/OQlgylgCnh3g2bq0DAFc4KFNj/LGY96JYM3ZjUISVYmfM5SXyTTT5YwpX+YXzznbLYHaW1oUFevb+Lsb5he4aH1p5da6Za016ao1/6+iUX19Df03lcJkVHsP+mAFlugfPl7zHW9wZX7h/CXT77lyivTE7ze5VwO77StNDP8AgWnWMbFcoYUxH/uoK9k2Q+yGuALf2e5wKlGwWVoVVMOzPOf6WsIKaCxGJlYuTvES1DyTg/3Jxc50Nr7lsp6hJ8y422A1lvyM9X9Kb98HJ6s8e4J2E/W2nZEP91GrK3H/sq8JOJaPWxNmfRJB14hzt92W4rEhVKm6E2BrfbVzD2eAXXjZmOMvaXMPT4DXbJVw6ui4bdcdMCrB7CtDHNOBqapDaaJPX58Of4ML/dxQ8E+vEseshke+srfDs+4TBWxySZobmnNl0mLdAAcGf+DY4OVIDxeTz8WfZkTHpUNPQOr191YmqShMDkxheDexeKZ5Y0RIcy8UKhw0kEJyTkuZD8rxOnS0B119m8+Xla+c0bwmMX9UaRcAAcOU1EQ/ty16zMF3KIkPubJRUnQb1/tAz87CQwTyZXJWSz5Wveh5eh4V+v4jJbVBICJ+GHwmosSYgr4fI1z8UjUOBMZRId1WH0VMv482NV/BFb1xImQb7htHFPC+cBYDIqxZxWHL/lVbO25bzS5cPzUQJPTPdJbACnSWLN0KJhriJnakNnXK5EHhtsor8WRga9kumW1nGkElh/8C4gUExQWz9lYZzCoN7wXmZapd0F1oXPsJM/+6OxMcqGVzxFuSMyI6hVSCgoUueMuKxWCEg4noCZ2oB588R16UkAkfaZL5yQyiYjyOeM8493/Sa449C5CtakVdNL5k/SvuIUltuhLPk03qRc6Bu2uV0BMW2lz1K+OOPK0DoxZaGaA7Al3Lvfhvci3g3S/CLF2jB6AnSO87J7DsRlJO4mwRFoM84c8ZyRHgamEVroJffd9J/igzidTvFjmpHrfFgf65t5fv9FTGNbzQ2pxKJGEG6uqTOf9mIVv3EN8F8fxF5/76vAr0zNWhgiE+V6FT9UJjH1dBbXPUJpd6/Q2n9jpiaiOEIHaRZw28HWOzx8NYFv1ss40f0O21ud6LCHeykjLWYqF/B5c+A08hGqT8Fhgeh4J3DsIpYPP0DvXDvWbi0wY6Uc2cw3aQfn4dPvUhAnAfEi7vTN4GHODjSBUiREMKedjN/MkWYhS5PkZFUfeqGQ9jhbCJTa1kR4tNDaD+HMltm82dg9CvibteyxDDeAiHZIS+7n9vKRm9nOSdymDZyftZCGXx1CV3hWgp3RRBpwLlPSAq9ZR4B36FCvy9DtTwNmvpasuVnVoaxXq/A2f85aTo8vC8/E4JYWTFPVDREhpmRymI0z6CyPdFkxGfb217VyBHDFyoRwGxrqbxhU8VizwSA8CwUHAaBNgTzQ6wLd5E0/tqro7XuT3CjC3yHBXwg6+zxGEPW7farxJQRtyplo8t115c4BBVMKjJmClaXzbjv4IDVKuGLGSrtOGpdQyu3zBzn3U5uUlJJB1/fZr1/JLwze6TdfmcS+61sr6B1RZYgeDvWXrB8/yR9jO1qZwpp4jS/z4/hq60geK99dkuZJcnidxoyVc4IvkMXU/omNJlm0ycp8YY6uYjVeDpTzJSs0n9Bmvagfva1ABhSNDt7gtvuGLUlXZHYTNq4qxpJr4gO/Tcl1BeAHqmw6ijYpxgMkDWwTd0aUIit1m5zN3CD/teU/TmBfBX7pG8nCYHcZt7vf4eHT2i49vsZIHpJUhJhuEOnE9WebGNp5gMXjp7Asdq586KXSgct6d09lWubjy4ymAxdEfWo4abGVcL6yjdUdfUp/fBkb6MoRht2JYDU6wY1KF9gEPDKMbesS5ZZv5IuZjD4wfObwzZTAYGD6zEidyyDXqk6TJeO3hrb1YDuO4DlevwVOpHCaAbLR6Lff48lWJ86bzSEfNHLnThZoiadQnpQGWGciIWEab3D+Et0Ak1hSEhgB/HgCJbtM0VWEx6iUYhrmXIgaB58pJdBbF/LqzWHAcv2mBCd2C6KNQZGNU3OtrzVmBD3Vvgaq3M/+mj6eoXVIlsXUjS/UoRKG+mfR0+fOtfePXgDnOgCcwtSxKi7P0dW6qOOWngaQtd9FQoKdEdbE2SW/mbRxskone34pPIfZ8iIBcH4doQUvtckKbar0GGZYfyXY+sKfy/p15yitLeVySQqqSdaQjxkrluDF1tolhfT1KhaFZfNMpTcTZbyG85QQtqRyQ7373TsMDrQp90Wi132zNkdmQI8pCc0kEyV0QyhKmniTgV2N6UxYd0BJQY06fgiG9dk2Er60dtsq7bp7MVWdSNyimcebg8Bqw0NnDuqV62ydHzlA+Ka1+/6RXzFtIvXZEE9RInN+GvxXtigc3leBX02+l/pGEsNEvuKWpkzmQkvIDFgfwOk1B3GplF7IF/QuUR34nAUt4aEb4rYDJq4vsUrXd4krIlvpwx9CN/X3h0oFQzB2WyJQ8orKUCkTp7QXfCAzpHU12UhbwFd8DsMSPZPWwK8lcmxqfIELNOk9DZgLNmFG5PJB96jzDUOkOfkc/gT+rrNbmDLjSS1bVjcsQxEZ1CaoA0MkZPWvAHQbR1CLUbZWHlEccLQ/IkWaHMk6MA8M9Xfa255EzgJBM7fSWdObFJfZpksUi1FaIK2RoyKBOWXdeCRIY+omoej4IZz37syXWVNhIyDpssZ2JbWybhnRPof5Cn9ZUSCNK33RANdLVggBr97+inrqCSqBgcZsGieozqr73gnDMnRzdAFX6dA0+YwznoHFp4cwVH7D2c6O3sQUuQ1emuYDpel2kMAoBNxmxigNvP4Yqr//ZCKE14CQCFc1MvrJgfMOJotrVTOx4pfnxlf4lq6TrpSB+TeBKz6T/Iqe+O5XP6L1a45TJCjxQjQHSeifwJ3D7s1HXsbk09AUo+FPUloXMptIXmvy/QtdBcfTleKux0GiLVcWAzlHnUtNjMsjgzPuwi4sUibRded0GcQJtOGEPh9i3joJ3t6zs4yx+RXm4y7fItnFWHpdF9Om5Logb2x8GFIudgSqjvOT/A4GylgOHJK3a/HSbpP8t/H+1VtyXwX+kIBk/KQTrZpmkqnHedTkJX/3OyxEqTv4Xf9h2mkDi49LMJsARhALUaH7tOUtCwkqaWDr8+GnstspjfTuTgeu0IEdsYuUCzip0dPC9U/iHmZxnSYe3QP+aAY93hWdUthgAWZJXaeYddo8qSs/xASHswjNMxGvG9KPUMGwC8AujhLO0q65WWFfaGnyW9uiVJ4fX/HNNNeJITdEhJT5n/ylSdC78/gFLowuAHPDGNsJX3HJc4HdpSrqdc2y3ix5j5co03Vy4xG5ApiN1WJDuPaItx7v9LmDfPyG53JAODYMVoLTDJHnkNff9LyiOaXeSRgcKGHQ3EDDQrS4J3t9BQ/bS+LGIVUhM7ZjJ/mMRrY/rWycCjublBQ98vKzcC3uqfaSzb3tRfvrFy/6rdpcI7fcAAnaSG1DmRQlRstM80Rvk0hAEQfbKa+9o1tX18wY1WhxTrKay2qN0G1vdBZEaUfp1hv+k5tlASkLV6H5J4rpoDrvQB92HVs6qLMYoc6zvhJ8flzrZ7sYM7qgPDipyn9E6/dtcm11Cg02Qlkq+DPrkK92k2SXHmH1ytPwW/DNBGh93XiDHmGF5/nFbxHl3LKj6/TnqCpLbxZlKZJMY0mO0jc8GU01tUW//7OxVFaaff/2nsO9uC2UogZa3m9zcl0e5PrTfGWOWssF4bBPPtEOf+OkyvM1pbROm+a/BdvTgmz7KvCb9ptJS99DN26CDMi1/xLzIxFYejGXbxkxk9kQzMdkql7B5fEA8xVaNuVWUbvWQjkOfoXzx6vYphPDwgXlxKjS5kshI7iApdXCVrhgb26AuR+b0zJMc2hTN87Y8hRQQihd3+Xu1p1MxT6IadJdxa26wSCvVimQ5OWTaXZsG9NI885+i+YO+S5XCxBUU7nC8SJfpWkedUsO+9J4T9OGrY80LULwd9xYkvz4WQXLdAXtOPimiF1zBerkKYyNzAB0XkObf5veWJkuNPjrz+VaPrWpathSQYf21Q1axMT4bn8+MCo0x94hfIZDwhT53QoN8wYlzA5jzHmN1j+jkWrFx4so3N+9aJKrFaa5SJcbyJePSUFxgR6h8l0IjOBauWkbRtbUI0aryhtk96IEzlh4jAzYxukVm9i1guQA0QJxh7mBHvy1dMNP9ZQwOtlZwxTHQgIFkvyUR92nTsKDL9QRnqAvRiCGkfzxeqL2tOBqyARqdujzWL/Z7c9M0W4qrkJC8wVy6TFuOkbDbzeEQsmVCbyBBFZunFSHc6k4KUAE3SoM0V6GMQ3MzeBhe9aFHXqt03rwr1XmDb6qcSPXj71wq2zGxuQ6ae1tjHebBtDGw7rY6UjejJgMub/KJ5/WbuYhXTpMf7gNJwYUn99v/pvbHZ3YtMAvB7VIhSYPIdLcpU/h5GVLQjSQ59LDC0Qf8u3hO8vVxGhnQeoF7i314jXffGMmTC86xies0MQMgMrxQktcatL+W6a19f624egx8PmB7FdC64XZgvysKS/hSkMa60D9ljAG0loYxVeDHpu016vWBm1uV1jA2e/qfbjLCEJm7pSVm8MIHYam14bV4anrshH6NhbFUBRTz37p0VxJqQ7gkeBP8/AeaVEDxIUffbIbvHf41twYZF5m/SjXlcrOJmG19sGPgz0xmw+xwU1yFgx52uVe68b3HN++FZp6vm1DWF60ALoKhP3T6QpKepuDmJ1fFtlX8ZpWt+xsjwFofov21+Rv9tc5/B7QCr9dwZOthD4YBYVTrRH2U0oDOj9UxtjIMO5QGuhGlAbHyFTYIL1S65DWr9bMEZ26fwhjI8YabCrI+DWuX1ppZN+UIOFbvNBL9aSu62VhzvAUvfmfn9DXahLt0Jt0u06k1STQnj2ksZ/l+mUUZR3aTeOPb18BPV4oDvfzHFZuaukSNWKENUDmDLluBa/yFrSKX6ueBGZGzObQ8BwJORTW84rmqZnjoxW8HveVG8bNuYpVMadDEEkZ+M1j4MgN94a3oEtMGACf66EkIxM2JtdBv1/UCO9WDUvJjlntpfjMm9TUZR3nJ118JKDC+ErSP81Q0wJ/2HxTtLOhx6RU2VomKilc2R0YC0a0GCbUAxy3jFZQMbejc8PqVpxR7xl0R6vj3TBiuyKEBhuXHaDHVM6MvMDGaPEDudnQWpRSp09roVolAWMLjcF5oLTEsxXmVD7pkmQ3dJxEC4uE6By4gaoai1LCPr1S61zxZgWzTdzJeWk3rSHLb4W7duQtU/rAuYcjhiZcjMLail023cr7000rUkyJYDHDybqrOfsFZ9a+7yR3Eg+yC9kwekxl8tfvR/+kuqGK3dI6MdUuD6epgilmMT6MHv0+x4VnKxgqL6gNIM0/ci1Z0t+yXhHemJvhTcNRWVanU13hB1+0xlvAyQ16a4HgmrMfhgnyS81191e8EOo3IO8+fd91Slse5QUHPjhqsz2Y5ycK83XQQkjrhNwVnm3iAhofI0vPG6BXzBfYLc6jF3YNCyFI90+OU6DLqahdeo9Cu1QOGQHJG3tViAQ4/453mlNqLrt0LlVNEuHBdm5Y8dKSQirk0FWR+LmuX7om1n9/w9l4SR7DebNdMhJ0JDRz6IZ5BFTTRKKRenNWD32XbVKyiq6N4Hm06ja56fIfyS7DuKy/lCJoVr+0W8K9g1rQ19ZjeykD51cyDr2VYpRIa6dfgBSiNNa3U0o+A8tUpi0NXr5s2ijKUZA3wyrO5WtuvlpyXfjSChdGra/adWgIos1pmF24euOFsgymE1UM0VcPX0Ayl/xiQf7rW1z8Qi3+/pUPHz58aDHMCE5jgJl80D1nf1DEROhwlnCzP22qVWujOEwErKJak1otiekRAxEDHxMDnyO9+pj4iXVFDHyJGIi8e+9GNQr8e4dbey8wm7Y/8k5uT7v1kYCrhU8PdmU8Y/2R2hGriRiIGIgYiBiIGIgYiBj4nDEQBf7PefRi2yMGIgYiBiIGIgYiBiIGIgYiBmpg4FdrpMfkiIGIgYiBiIGIgYiBiIGIgYiBiIHPGANR4P+MBy82PWIgYiBiIGIgYiBiIGIgYiBioBYGosBfC0MxPWIgYiBiIGIgYiBiIGIgYiBi4DPGQBT4P+PBi02PGIgYiBiIGIgYiBiIGIgYiBiohYEo8NfCUEyPGIgYiBiIGIgYiBiIGIgYiBj4jDEQBf7PePBi0yMGIgYiBiIGIgYiBiIGIgYiBmphIAr8tTAU0yMGIgYiBiIGIgYiBiIGIgYiBj5jDESB/zMevNj0iIGIgYiBiIGIgYiBiIGIgYiBWhiIAn8tDMX0iIGIgYiBiIGIgYiBiIGIgbox8P7RDHr6ZvDwbd1FY4EWY+CTfWl3Y24Ydw/fxO2BNttlmji9OxexNtpl4/Yk8HYFYyNVrB4vY/lWCQdqVBJqqylCaZcfl3BvqYwTJjLwy317eqpQfcA7PByfwHZ5AVe7AZj2BuDaqP5JhTfKOwtMO/1S8J6cE/jWMFERcRaYW+eZrDwyfyhs2v0R8WybwXW/wZXccfkE8GwbXEdgvYqeayuFCwzd0PMoq4QZJzOHsvJRPNVdPaTn8Sbu9M1iMTO/ty643QisFYLzAB33pzF4MBMY8Mt3WLv3F/iv7X/o0I2cEq1LqlE30wHoNUi1Mk6f47ztU2ANytaZMaUxOP0iZ3w7MWVh1sK/rECFa86FdJFiMdT+ZydzabeilcXAObky5mUWXSZaO4OKM0fqrjujTqddAGwbfvY9xkbkePs5xXeh9UbzZRlHb6X5SjE+6dE2Ub3hJ0cy6cI+zquadLsgraD+ptagREJ+uDi/VriCwaVZx5ngXZoYqseO76XdAC/PBAwjN1xHMbkmD1Iore41ZID4/N/MfwANyxYAGE/zEPTQVLiXvzXo+F5WXQD2rxXI88VlUROhIyBYKAJ9+bHu8lYVvX3VVP9dpriJbx534vz9ZGNiCvACICZ/4wV65jZzmd2BgWnc2xlG71x7bj4Fuw2Dk2WMjczgITP3Em4vlTxhSwtfJPhJ5nSwhOlzM+gdB5ZvfYVvxydwfcv0dwI986b1+ndex6UEDRIsFnDbCGCZhMwlYAa6Qxz2Gs/ctpAgaVpjfn1msU94Hu3SxCo8R01rc399Igrq2wtccDY4munnAdLEF/0lnHk8izun8zYH7/CwuoKh8oLeJHfh6tICrhriKzfrBHcWaBd1bzxbYQLvb4zfP3qAxf6LWDNzTZSh4PtnVcx+vQn885/i7/7H3+NIxcuwh59F6z4xuoB7c8PomVNC/8bXVaz2T+r1kwhft2kDr/8UnXqpvmg8lzRe118AqfGlbGr+mvLqN7z+3Dz0VWAupAsVj+k+iaFrsxjzlDgSAOFobVTGZIUTfLHCQ2cjfElB/sSlMjAyj4c/q7FRBBCsu8AmJauFqfiDRKPbcadvGHeM8JfKZITQKlApY2g+D19tOHtuG70pvvIO3z59iaFyE0ox4hGV5+h9tomr3VlwPpF5FcLhR4g7MHCRx2dxvaSUbll1vm3D0NIkFvuGMcaKsTLWlsoZuRWNThI3scgCq1Q6UtxLDN3oAg524cqxYcw8+srZvHL5TH5MqWG5phHh2pGlCq/fpIc25LS3TtlCbBAsPBG4PjKM6+JbBRPFiNOHVL4vK6IlAr/DmDR+XKFYIM0Z2GQH5wiANntAAMUseoxATvmkMGvL5QTWq+glTfqSXERmN0gLKYPpGMGnctMucKfNZlLp9lDaN6cXsMYMvAtrqKJnDrnC/InRm5gan8DYowytuuwWMZAbb9Dz9SYGtcXjfXsvls/NJ5sUakuAuBwYqGDq6QSYWN1awKCFG2akNhldGl5IsEBACPEJ2KeB56Q/BUL7gmeANoDLmAkw9AJtblUWMefZ0nbpEMZGsgWW94/mwVaibr1xthptJYScOZfeFHNTHYKdrHnFgN4xg4O/7pEQ7AOny/iz00ZY0gJyq3BQA06Ruh064fTDo2XXhpU1xAjzA9NYGzBWkxoN+VSSnbEMNMooEJykZCyd6GY/jOA6u4KzjkUzDTjEw1SuFZffmKKS73g8zWRJfpM5zXE0zrK8yajhWMFrgDYIExhDmB8wHR+fwJ31BVx4RpZkAwiAmUsiioJZfNmdo6aQOz+zyprce/rr4Xi1r4YFU/Nji8tGG1drPgfxbDZDm7gzoiyTpPio+2/9RVrRQXFEH7RigDe1s9/j/YArz3Bdho7UXXHBAhmylLEQrdYA48ynbrMRalS2MDivUSknu3V8Ery2SLNbkKclAv/uzstiphdetKRpXVDuLbyYtAbG2x0SAWq9S88m7lzbxtT9snDTUULu9WMkHHcpLfm4cUkwQoR27zEaNo140gotH3a1SkrLphn3Y/2r8w/1Az3juzluO6S16cT1+WVsDKRNtanxpkXCC58mcMB14rEg2M7ib8PgLUOAdP+Nlp8q8YhY00STG/4p4TmFyfyIfcIza5H6HuDhpa58V5ZQ6zOsJosBRjkUKG8EIIco0+bnPljoV9oqIcC/XcHM01OYvtXGa0i5sWnt4Poyrm+VcI/SzN/uG6zikPkC4BJsXv/sEjEbEI5cgi2A1Bd8+xIbP+nEid/OKLa7ib/7Z134F7+VkV4w2tUeq3XguM8VhNNYthVcDox5FqzQXMjKmx3vjmV2PkrxxzKDluUIq3nwlXJjHt++LeWuIWL6vLnSwFgAthvWvBp0mkNfk/y8jqRlK0lyQkrgVprNxG2NLGQ32X2z52nIDaMNg+USekgTr/lniG86FRlr27zeGDOtV/WuXSJXVs/NkXm0F8cAP/K8MgJhZntML9V8ct3/AjzOZAewapR1Is61oNU7n19ISDasxth+JoHQ5o8sbtVtTE2WhetRBaiuAFtIlHoaivFEyOLVwXlB8ph1v0yaUywUkqVkyTycqfHYltmbCbP1LAEQWnNu/2lduZarpnhtUvUnH2qJwF+4l7xoRe6DX+H88Sq2dwF45npikrdFVgoyUfbi6vkMuwYo4ddquamNpI3vG1agiZB7gn5SJ2kugfPl7zHW9wZX7h/CXSaYyo0hyZeErtIiG1/JEPqVJhR4ibuPetNmOg0mIRxSMybCPlHkha0Kh8tma35o8cyk6tURllCWcO+Gjsv8+ZTwnNlIJyGMq73Hc9KILlzon8VlYcVJ0mqEUgIIMcICLj08d8wGd1psjHV9TFy/UkLIfELU33/3HKtbLy0joo0Cu+bwJn+FNYvSVef9zjZw7GQavuzW03lcpo2CR5xllqbCv/2beP0nt/C/K+Polb5FBHTnv2P6F/8Ef/BzlzHUW5/ZOKXKbXlaXz9DfwVTr+YTdzsYJl9krUlgyRjJ2L0PhwSvorX6bW5GQCC6M+1UTAoqHE6iMsfIscYk+W0otcZsSvGAXh9sqQ7Oc0U3z9L5tb5qWkNvlRFKOXX3cQlXlmhjrXFmznmJFqnNTSidrMZkidbup0wL1LkDuXYVKH+MRAV7Hqy12ejEVKAN/3CuNwAAIABJREFUjvKC0kX/kk1WLYuaN6+zYATqpyhfIFfCaTqzspZW2OVvY45cvG7i7Hfz6N2SvDo0hhLWGyyOD2PRKvPCNKfWZkFCNOGwLGVS6bfWGAFSuZDwWg2jDtkivH6FstM2y+2/OxZN8FoLPwmsBi2Z6fFPSnycUMsE/iOHhfauYNtpUrPmL09LnQmrXoJT27dRTpwUcQi1gzSXOIXlduAJpbP7h9gspBZ4jV3x2+/xZKsTUzdO4cm1bC2/0hgqwpM06yV8XzXH7Hlc+Q2GywKLnlY/gUuTVH1ZTSUzKbKUCN/Y9fRZBwlDhvcHz2EC5OCIG5kwizCu9h7PElcnTpeA6i7eoytfOJaFGgwrokvrijbbxExmgEkxxkY7SBpLcgUjZtc3zL7oa6NKQ6oY2EV2e5PwlMBAc9ZYomjjVEOYPlfBmrQKNNivzGI/acPgz8t4+B9n8bAyiUEjBFphv4T2n2SWLpTgao5V/3/wDrkbnKUvIzjF7naMx1dCw1vHWjONTDFUkyB/g5pGmaFA2GrbNvFNgexAWttWqFjDmd7h9SvgyOmEX4XGyB6yLFpPwKLGPORwB7CTAOGx1pcz7JoLHW6UcPlaSEBJylHoTGUSHdVh9FTL+PNjVfwRu/AkCgg6F0KCYVo4d+GkvlhorSJxwXDdmKwGPDA/Ptq8chqdx/t9vugUrP/DzmfXHdVuEChdWz2vayulrz2uv1KANqWrj7WASngfeIc7ffW6Kx7C0C2lfKRx8j0m3AsW6mllDVmKcVaqB2ByhqYB2cJdv3qcPKtasP9eC1vJa93NhFfRPn62QOBXBHRRuq8ECIPsoyUSlM9qNZIDfpyXiVDIlEiptKjDZjNZjxt+h+2tTnT4mjyjYdHC+RprR0xJI6AkRNWk0C9rKbdW0DuiYkl4HOovJecK1qsYI2JPdfANFbJ0OmwP8nV34Wj/cK6WP11atNHHHdVfQx7P2uAQgzIaflWnOphJ4esjM4AU+tONSmL2E8/GHJy0Rmt3/PlVhFl8LDzrxrYfwpmtNyAjWK3bomT3EBBAKD3Ppcdu6BxAOR8+YdduPcu3lCCfhuetcQd0ekOmNpq1tFgOkPo/SOj/08tY/pNb+KtyBYNYwZ993YY/+PmppoV9pzFGqGLmnQiblIcYljzQ65TDJl6/6oQazzfJRQMZ4ws622AAvN3FDzqcHguTaZ9+DT5aoSWvqwsZfIBh0FzTG9IcBYjvfsZFnX4ovmGb9cps2M2BS2U5OyDcWN2zVoq/uQfsNbQBc+aqhLVRSa/o8ghgFa4W03XPFLRLg2NFD/Nh4+Lpn7+xvUgC+z6v0rQiaRyFxBpwExr7MryLxngpy+pZUhctkGdAjvwT1Pz2p5uVKJte4AKd0Vuv4ofKJKaezuK6PzfFdxYfpxqCdWtFYLoFeTFZa0jRansJSB4ImyY3bw3KFgxLrbnkRrjQBlqtjUxhvFFea/vy6QdaIPCTH+EkjnZ3Cb/8vNsFxI0ItJD6Hria4iI4EwSnSHbOw2U6cMFzHUJIGOQNhdFEUmlfq6sJp/H7lAL2ehWLQltzptJbrIlvV3D3McHVwlIdN0yoCvw2Ao72usbCLqLh53rYqtGJMwDOkyXCCP21ermPeOYNZiF/XGXWu/vdOwyK62Ddrn0kPJtKD7bjCJ7j9VvghD93TZ7QryOAUIaQEKGF6VB5EFEHOoJpoch3eDj7BkeOrThuPanDhLKo00ZJ+PV1hpyXXBom+XYTe24gay1L2PWEf9KG3p+Xsfwn/wFDGMDtFgv7rNWdf4kzxzsBea7GaWMJQ/2z6Olz8fD+0QvgHI3CKUwdq+Ly3Ems0QFlB3cGkBQATdyn82vwwC1i4cnc5vQR28iHHk9hObWWEmElUyCgZmpaX7jFQojYndPnUfSBy8IwCmX0N9N6bQdceqzCLXQuwuNDhar+6JncNeJWn70GsnictWBIQJpfKlxRfdpFUebxwkrTrARPdRuVlyFl8Tfa6HQ+c7aFziKwxaa7jNvd7/DwaT0uPQnclm74a9DfvE1H0qLAWmpUtrBA0xtam6QDaQWmyNEorxUgPvVgCwR+AEbYp96amxF23gFwNVkpZHSXca9/uDEf5RSwFkSYnbzR9vtCn9ZKoVLJPQBmd/hGw1+zaSQsyWv6BB4L+2+LyS43IFQ39aslGn5z7eIkcO0B0K5vCqJbMLJuGgv1fd/wHGpMvXEfA8/1tsnLL/16vST3U/kHu3GNftEGYQUou7dcbTzL8FssMCeTlpAwQ0L/BO4cXsBV30qXZGw49Mu/Xcbybw3g3+Bvsbx1Gpf/5U8bhiULJgLDNE5wnwNvbej1emF0AVfp4KR1kwIWnx7CUPkNgzzLt3jN4+GlaazdkrWYMOFJuEnRwejjh3CeXUdMnhq/wY1EjTKZye7mmARp14KaVTCswZU+v1klnXjGt7iAgQ9CrgDHJj1rWSLsU/mgJtQBXMIV8Z06j8ICUSfO0zzVQsQ3czNY5PdYxPgwDLduATZgjcsTdGXJ/LAS/vSGgLIKemxKBoVgo7neh3klNynURkeZZRotf40POM/nrzglJYjyugu8jSBokxGUqX7ndkBZlww71hKSgRr7Yx95vAQC/UhtXAIafjMnQY9emQPaWU1p6Zo3lWTP66CFTK/NoXKTsoWpnn5T618m/jjDrRH49wN3xw85d3gXa8J2WFNqCJ7VOqnJysIFa2PM5CVhbyFD2FdMil16hBaviIafzzLQYxjeg2Lm2rVC13QWQ0BmrhQRETmND79tZzeSx5SMcFnEr3if8Sy6tG/BInh2GldDm+Lk5Q8zV9MpFBNy6Qlqi+uuV2kYw7W2IlbAb/GLjb9cr+Lff/c7mPl3X+E3cBprv5jHPVRaIvQbgSEXA1qA4qOlwk2KtFEokwuB2a2LA6gkrIgH9JTmyn1Mipj+mXO9GBwoYdDcb89rULxJsb6Ch+35N9jktj03UWyOs/IFha4mBVtDZ9inOrmucGNuAtfRye9JyPcAOJ4Ph5fR7t3ln2q23pzJeL6lLvMMmz4M+Jg0s1pbS+2zt6OoTbe9NIIBh6xxssZ02BeIbQ4hDHKcEdptBlLYqSsR2QLjPf7IcZ4/9H7Mq0LrSPbJCye30nkJoU/D00Raqn49D/IfbhQAdDC4mQy49Ph+6aq42kAkGxdF6+0DnKI6MycVnHA+Hlu6538yWSMCRI1ghizllUraqhMC64dSmpYtvHoZJl0MQS7Xhd42IosDuUAGvEACsD/XqKYF/hRBID9e8zCEcY3RRCZFUNh8SITQ13rko5NvBMGp/Ex+as6NQIbgJUUSN4IeHUkTV12BmeRyiaxmUuTSY9xHjIbfEpDNpLAOqUVHDyyFFp16+OnJiNZsSlMwmaaBxF83BRl4/WgGl/XunrRreT7gqYUp2md8+Hd3DHFI9yNQfTpKM5Yk4ePhOamzztA+4NlpoRQGnYSsj5AAQXnrEyLseZKsarLirbClTM8XsvI1G9/Qhj9dKQn7Y89+B7OVr/AbfED3p+j5/Qrwi/+E//zLP8YfdLdG05+u2d2YqfXpMubdnQ5c4Hv4vdLMNKs4UrlpE+hauSPGAqKVFPQA05GysLJSOTpLJKwAGwRhdhhj8pVtirPj2KTwbVuYEaD5jQ5csS42npUio1go2h505DcapGLG4Fr3hfGX3G8vhbn3dWv4Aw8vyj5pHkdazQuafhvtax49DvUvL072QeVz51JeWU7TfJvcV81tQOyOx4fFJX9WBzYbnldcmXJ7qftgtOhESpbQtxLt1SuyouqmgrnuYgHISj5Qh3WHbtws6GLpH0xXPIGtFNc6QdeDLz5WV6kXs7h5DcuTpbysYQWXayGjIk3LFv7hf57PHZiqANfFoXnaAPHtj86mWze6bl7rdfYz+Gxa4MfPKljGPHr6Zm13U8KjPrRk8pproKhAKq+FIgKawSW3CJDmKCQgizKpYBuOHgOu574eSIUMc6BwPrOzRJbbp8zuqWpzItSGIb8OvvnHv/ucmfG2us1nZBjb9HKjYOJcZklVPEgCg/OniW2ljCemrL2T38nIH3aB8GuUWkOVzqZiggcJSwgLfR8Pz9w4YXWRzQ+Zho1FQwk9Hx/Psn30+mzaBUHmaH04mZeS0deoxwiIbNJO/LvIpSeo1SJwzrmStBuHHQevan/D//5v/gJX/9vfA//v/+LvKO/CDIYe/TpwtoLFf9vplRafrx9h6ruTuD3ahV8X0fjJT9FT+WP801/8Bf7qNyfxr4/KRDdcV93Cn/sAAhuztyt4slXCFS0YnhhN8Ghr1bTwSOq11i5cvU+vb+uH0UA3iCUP9MjHcIKuCXRNqL3r3dwmtoCz3+3t428s/B4/Vae1NnBo0CqPvJeg5bzUh8kTmhpQpAT8rC3uKeDTenEmQCqASLBjF65r6vXoezsTuKzfdzHaVwdunR9KEITmAXVcnpBVj2dZ6rWWgefuGwbsZ93ovNKVsyY1medZTUrHJzyD8Ovf4HV2cgFr0C5x4mG+NJz9iSF5wb9q3GkJ40XFGEGf+2kvEiGX2sCNenas9EOkp1+4a59ArlfVw2zHO9Bx+hCGHr/EYtH3fpxG0kdRWaqgfNdK2cLIiuytUQa5NMEemk86wq+6n3OVoPvBa5MWfZxQ0wL/gYNtgDm8mmqzMsNfNfG5eU2mwK8gRoHUwlH0Kt2ZkRfYGNUHjLlkQkQUIOW2s2Y1ToXBi4y7fNsDnVYfumEeztDXntFEPKhvQiDtSVCzL0BRkPuvXl3s2ZnEPah7zQe7gUH9XLuxRHgl3c9+KjsLq1nhlxyHUbRs+tpAF3zaNURplVWu/cEz1W03Zl5zQ5/EtO/qBCIAtCHdPzwr7aE5yB1qrxvn49hNpa+gSw8laD9Oviqw6LyU4FPWmyQxqNViDUuSx99cy3FItM0mv7vhP/C7f4jF3zVpdfweHcCf6Stn06V+ihO/P1nzisO66taasbyHsFhQTDfGxpDlJS3s62SiE/T69rNNXCAaUdaHYokJkvtP5nsiqvzG3Iwr3NlaGwloVxbjg5wDglxdamq7jeBu4Gg6aj4VjZRXAZq1QAqVwIFLgaur3e7GNnODaitLNJQbz9TjSNR+eeuO2hjQ1cXG0rCAZX2XPt8ic79Nbx7kdZi2Ag5krVWiSRfI2qpvSMvlAVIYJKj9k1g+/AC9bPntxFS75kXild6UkDk+jB59//sFoonNzivSpPafzBd+XVRAbabyeHMbDjDPLuH2Es0DGv9h9NCDmp6rrAc6/9MIkBm5QgojNb7udcYZxYUlTefon1R4yZSpagvRG3OzPEaO/76niMFSCVfZ6juMy7rqIJ3OaHhYlpKZlUJDxqiwUjja23RMf9MZ3RjNnxI6kcgWZnPEBSifpHMDFzE0P2svkkiA0lwS1k/Uy2vT6yaBDSDvnZWQW51TeO8+fuXDhw8f9g78pweZJ4fnk/jptTK2KGLA3OBwsTmGFREZMdAABhImWsMC2QDsWOTHjQHezB++mfmw5I8bO59P778kWepL6kveDPrRCfzWZYfM3bfqdQvKQ2VMixhoHQaUwEVnO8o1tcytqzVCihiIGIgYiBiIGCiCAW1F+8xlqR8Tr/0RCvxFJnLMEzEQMRAxEDEQMRAxEDEQMRAx8GVg4Fe/jG7EXkQMRAxEDEQMRAxEDEQMRAxEDEQMhDAQBf4QVmJcxEDEQMRAxEDEQMRAxEDEQMTAF4KBKPB/IQMZuxExEDEQMRAxEDEQMRAxEDEQMRDCQBT4Q1iJcREDEQMRAxEDEQMRAxEDEQMRA18IBqLA/4UMZOxGxEDEQMRAxEDEQMRAxEDEQMRACANR4A9hJcZFDEQMRAxEDEQMRAxEDEQMRAx8IRiIAv8XMpCxGxEDEQMRAxEDEQMRAxEDEQMRAyEMRIE/hJUYFzEQMRAxEDEQMRAxEDEQMRAx8IVgIAr8X8hAxm5EDEQMRAxEDEQMRAxEDEQMZGDg7QrG+qrYyEj+0qNb99LuehU914B7S2WccLC2iTt9D9BxfxqDB50E8aGfaD42ibXRLhHfQJAGdKQKVG7i9kBbNgCdbzU7h5MydGMBV7udKO9D9WG7XCsfAMJV9RCWb5VwAIB62vmlB898dmIqF3dF8FurDlNX8nvGwx+3cediMj6Mv+c4L9vGcW9wJTUHErgqRG1+gQs18/nlin57Y1FkrPv13KO8s8C0HhtVo4L35JyYUxpmcJ59huMLZI/Jxtww7h4WfQ8NA/X52UmsnX6BnmsroRw2zp9bNqFwQNOLrcIFgONlu96cUt5YofAcdqB8Qh/e3Dctq9kvGv9ZLJr8tX5D+PzlO6zd+wv81/Y/zKe9tWA3kl6jbprDlyH4C+ND0q/AGpftoHlC85roRO4cl/S6TpwCyOczBK8WL5WNzlrTteEwvX96KlkzYp3g0Qx6JS+QVfphTSdXDX310/mbcL+Mo7d82UHzrZp1Zcx5gq3rP5LJv1s9RsEOZkRmtTt7fPJlhYxqALg0N6PemjQiDT81T9JZdIzCM8w4mPWUmb+UkiVDfCgU54JUfb1eiFek68yaP0XkoVQe2TDu/3YN2U4WaE3411oDBth4tsKTyhX2acE+wGL/RaxlCvskAC+DB2RrFj2Pa7fInbxu/o2vq1g93okz8/N4+LOcTcbBEm4vldzChb5qTKBrwwGmKZlAuJJwn9TCtyUKL8g0wTgwMI21AQtJBzIWvp8t9E34uw/eXB0lwZ3bRgy0gva3APLGOwSvpXFtGJwsY2xkBg95Q6LHWjAt2mjxxsswcbPRPFjC9LkZ9I4Dy7e+wrfjE2puUv6tCfTMew2d13G5DM0nuAbGpzC+Zq5cNI2q/9cSrzJwsAtrS2UBg+DvzeYuXzgSTeBxF9+feJAYxeLh6RoKhoxOvP0eT7Y6geowK2D8XKt93mbMEdx9hpdBHzx8vn9WxezXm8A//yn+7n/8PY5U/Fr37rto3SdGF3Bvbhg9c0roZz7RP4nbTKeSft4WSh1m2PNaEUN4WlpgBQ3WX2RsIL31zN32cZqFC92GrOSi8VrAlYqsRT3mQ5UyfpivwqaNDOO6huuupXf49ulLDJWnVX/9un92EVNPZ9EznrGJNvl1W1ApY2h+FmOZSoM2nD23jd65zUShxDBMO5pQAhI9rzxH77NNXO3OgvORx8jgp4HfMB/XGyO5QcuD3RSNcAEfGLjIY7u4XsqnV2/bMLQ0icW+YYyxMrHs8QkJV/EMGUMKqW8ed+L8fVeJe+JSGRipIevV3EibjeEbt0pSgo1UoTaLWXxMrdvrWzSHpoWyexOLTDuETGtoLa0LrRS7btdgbRnRa1xDn80L/A6BSQQiJcC+S3eamyk6x52nnc5CjgWgWN+IQF9+rBYvSKPz9SYGjSBXDESBXG0YvLWAwVTOhGlkWQIcBgKgt68KoISpogyShOwbVfT0DWdrglj4os3XJIZSbaw/wm2zmrxnKmUcma/ajY0UIlZHJrgSYiBDOzPoNQwzULVhRH5SePPj56rxzbh6gx4xB96392L53LzGO5S2zhFOFcwDAxVMPZ0AEzFnrPPH2MXV5zG+qscdOHoQ2LYoJeLma3uTtU1z1ljyWHP6WKxnC2M/AllEuZm20JjPA5M5yoOC4BWuEtypYv6cUoxisT8RUIqVU9BIkA1anZhOF7G+FeyMyHbgdBl/dtowzSxLpSjQwmCRuhX+TKWCAUOGARhljWHMRknibXAMpL38ddvs1WSFBBFv2iwVWaExHyAlV411Qgo4lLEsNj9c09Yb7AI4cbALg7duAuMTmHn0VdiaY/mQtgwOtONO3wTGELYUMs0dn8Cd9QVceDaMy1LxZ8ZFdJeC7iYlSQzjzh3rrLIJlM8pZDZGGRs0rysN0QhHzvMA0mdwjAytI8FZWaauLi0ECheIWn+BxeOncO+7GfQEZIpVf02Y9aBBLwbb59dbwhUbRWuE2mzk0i5cvfECPeMrbPXibI9pThHvW2CFNvH/Hm2NIkU3WTPWzBoi/M0aGkmK0QWtbEisWNkeMLZRTQeaF/i5CWZgVXtowd0FsDE3i8WU5lMhUuVUOyjSAGyPDKOnVndSsESB9Sp654Gp+9osOHoTU+MTGHsUJjCiZANB6oMvEGkwqYmV4MbszlkwFLtx+n5StBXdZazdPyS016IgE1lyq1oQO02R3kDQtJmJqDSJD5RwVcPj/oTMrt3ZVgW26HiLsoHm5RchXPGCyxgvXrAahNMWtalTKUogc0yC3hibDYrB1ec0vqStXMQKzOaLfwkXSwt2fHk9h7Rzb1dwV2+wT6B1gnH+oDafmjlfU6D1vOkvYzmV1mjECu4+6g0LSQyyC8QUzdpKaqlVTjGTu1YLFp7zcnMuN25JPR8x9PYlNn7SiRO/nVHn7ib+7p914V/8VkZ6wWjS7q+NmsxqPTvueSZpT35XcNm3quTUY5Q03ObT2k3OKq1oTF2XHlqb35xO3Eh5bnsCkRnzof4SFh8nFh6z5qk5hoZRmK3152662v32QzgDqQHNUnwR3yeBXQlCiRBD8/omHo5PoOdpyDLQhsFyCT2kidfjlUl3BP6c/jJd1gLYJXLt9Ta4oQ0Qw2psjEQzmgh2oqPdK/52Fz+gAxeCVvIAPzLFPb5koh13RqbZRlNeL41IZBkLOzNAsF8EU9X8CCRlynfv8LC6gqHyAk50lwKeCgFYXlTNDZ6eG6YYy6704W8kAN7kTlOa197dnZc4c7iN3chmdi7itu9RsVVF7whtVCexrb0Pjn49jMuvaD1kWZ9Mi1rz2yKBP9CYp/O4zGaO7I4QUn8g887PvsfYfKIlpEXsm7QVkw7UQ1E0WNdWeMefEBgiSJPY7pvAncMJQaTsDpHIABmMtgMcYspqIdb24Ve7ceCUU8WqcQ1xYumjE1N+nNTiyDQScJdkRKvCZE6jCd48vI25CTw5V8bQ1ht0nHuerSFqoqqEoCRzivFozhv4hF9o8MJls7VJNJdmnLZ+XuNLzF0RLtTvesPzUHX+/aN5XD9Ww3XPwVMrPsLMTwoyzOykh1GoWiLEbG0DzvQbNz/FDB0tTahsnXEMf34ZGwNpf+U8UEXKsZsKOnHeAhIM2p/zHoNTRTIEn5AgcbwWUm0jsgO//Zt4/Se38L8r4+j1hZ6d/47pX/wT/MHPs/lHNuAkJZPWh9zzkmJAfwVTr+YTdz5hkb13Q2asFRZjUCurn97di6nqhHVD8pOZVr0q496ldwCUq4NROlBexTPFuSsAV0fL+gzZNqbK0xg0GkgDfL3K2vUzQavzNu6OD2PV84e2mwWt1Wd6shQaN7VJOEtnAPqqaQ29VdCYzWsJV5aoX9m8VfU3lK6t4cZNiOe7OrPhux3v38b3Hba3gA6De+d3G6/fkjXFibQfiQDrbQL9dS54GxVunkaYJoTqlWdiTL7wr50zOlnN1XBe4/JtNsMJj87I7yjvVJ56NfyukkDWs4k7499j95yMo/A7vH4FHDndpnD8GIl7OsmNl+C6AS4Rvx3GdUr7SMI+tXLvBP5zFazdcv2tfBQRUm8zYXqO1eOnMG0m9+EO/HDN+F/7pbxvTWTsAhALe/BgF67eJ1/uYdwxh0UASKJI0FKEkRdJcqjWqdEQNSdSfISYIyWbzYI5rwASMp7zoY2znoYlgaYWlfoOCzc2b2AnauqsuUBqtZk1DgBII867Uc+3nRshTKaBBUdZCM98cG4AuDP/BkcHKsB4bf8728eCAbVYJe6o4Esk/nIKkNF88ZcWYMJlgTyC4TDHz2p8SajpxNQkMedNi93wfJEuPWI+Uym2rnXgHjP5EPO1oFsc8LSMPrMzta2T61zOn5yvBONxFZf7Wmsps7Uf7sWV/glcnjvp+SubHAp/KQ10rXIkqL3qxBkDpqFfXzjNGEtPiGioKir0kzYM/ryMh/9xFg8rkxg8rCFZYb+E9p80DJ0LurSeaIJWMokLHVL031Z5il03jWBtLlmg+V7vX3hNeVAMj7DRRmn1AA8vdbkur6SpZVqsLn6wRUzg7Qpm5jtwj9wQ+l5YFzzuK8UvTQNzVWx0y42n0qQaEME208UaAQFF5S3h3o0SLl8TvMAA837J5bSDzplUy/jzY1X8EbvwJAoa43aSFs49QP4n0wBxTgErieAFwLp+pHBtLBM+QO87UM7LUecn8aUq+BycKbn7Bqt4CXz3DoNinprkhn+boRGOcke56pLMZRWslM5n+uhciKIjV4Obvnpb785JKp0tjGfDtvJhVhbNO5JkRSvSlxhoGvkWODPvz/MS7nUDJ7pvsrKA3UB3yUqXQKWQWoMvecNrXX7cLHv21SKBP60ZUkJQBsPQ3XEJykurZTO9tYvTRBifS82gd9l0SAOQ48LCE5X8B4fR04rFylp0rd3yNxu6nWZA/V0sayrINEWm1Ve0oWjHYt8Mtklzbpid7asf8IQbP9n7VkxMRWYvkPzxMSCZ+B7vBI5dxPLhB+ida8ea8G1XdbmaJFPW/HIedmOSwiX16SLu9BXc3BlgDf0mzCR1E0sBASaLYFC/Eg2/Nj1+VuPrWpq+maND55NYK0qsiVDqg8/ZzFnSBzEODY1jdiGlvQJWM4Xp7LJuii/4uqnNfp0YncRQX0CIqwE4r9zGs21MTV7E9sgDAUXiXUU7m1wIn1WzqRelP0qQhP4/vYzlP7mFvypXMIgV/NnXbfiDn59qWth32m8EQeIBnhBFmwJ5oNcph028ftUJsBXojRWc1XdI8BcWWYHTbBrs1kZfTCs9txzHtUAod4xliqFo/qbKk3vrNGuI1+6vYGx8BeePVXFdru3Rk0x7X2vLp7LSTeLesVl2yXXbrHnF6ZDm3hXCCh/aHzBn4UpYG5UKGmVRXoWnZHAUU2k6wkoZwoHwE2cZQ7qi+uhucIx8MA19c90lDPXTOk1uOHy/sw0Qv91JLDcNwfcKNU0jjLLOfjPDAAAgAElEQVST5K+lwHkBlrVKav72DSdKTq8d9Bn0aAh4EPCcRAlDxxNXNFduDAAXZ8xMap7CzuQhS0/iw0+x3hyTmwLd16RssdC3c8O4Thv1pWmQ/EobXqtIKAaiqVwtEvhdBkkDQj78ZGYktxoSttXJbPJvSvzTFEFJC51UXvolEiQlWFWs76tdyIUEE+WCM0SHKsZ3Uwi2vleFUanabPy6/clEgv5yZR69/oI1h6FOv8HiK6qM2tWlCbxH3GxbBAOxcR8zQMS3hPOVbazukHWkgqnxZWygq/A5AbVAaY6EtFFkhdllK8y2sMK0vofFNPxZ9fpjLPNZDf9nOb6ugHHm8M2UQGT6yoKEPKuhhShmTiZT8NelD8EsTUZS25TfcAWYnUBP397X2XiTuzBUeYBePlCebwV168gud2KUbojYxB1bwHc7JIFK3JYkmZcts0+Bn7Sh9+dlLP/Jf8AQBnC7xcK+EoBf4gwJUfLcjtNdErxmU/Pm/aMXwDlyujiFqWNVZZmhA8rSKmThSKHVRtYdcK0SprjQOAbrVvmY1r4qY6q/mrZosiuOp5U8XsLQ7DB6jk3iHjpwj84LzJk65W8bjh4DrufediPzNxP2525aRjDQFW9RXymljPZXn7of3qQYGPv2S5r844cwPbqACxjWQn8vXvMNSZPAtRfYGC3OZ2v1oxkakfDwHOWqboCav2q+qpuZ0i3zlaGKt6Tz7e4AU5O9wOyKvVTC3Yimy4RiUnPDzxSkh2mZwWwKqL0zSORRdRB+lg/qZl3aQlWepfMpfL7VHExP3EmNR4bftFZ+t0jgz2sSLV4S+rUvve+rCfJjcw+u0FVLd+2Vigo2CeVSC86DnldtIC1MSBPfq0CRjCitbZc7Xr63XW8E5ifQyyWJuCa7RLXDLuPAbloz5C8AVbHHQEx9Ga1KRQd2zKk8NSLotPkPlQqGYO6jpL4X9d81G6MawpcwB9qNYY121Z+cjMNeafg/x/FlQs5aP+3DT9rP3HmmBYbjyhRPV5bxbUw79Y9Ia0okghARdTYx31qA8hPWt1m1pqKWQuHr7Ppmcef0zQwf3nB19ZRTTFRb3kjRcvwQLPllDZVfR9oiwDkczaou0wofflH9L/92Gcu/NYB/g7/F8tZpXP6XPxWpjQcTQWUaJ2heV8Xd8gasZvYXRhdwlQ579g1D3RsPLD49hKGyOqx6li+CmMfDS9NYu2UKy1+lwLExWqA7z5ZoG5sfCAnzun1XliYBOrRbBmb6qsH3Tgxf3JirOgdxg5UyPg5h6JY5JK4E46xHiU6cLgHVXbxHl3ug1wI39N5G2IBzroZja/AEWzI/4CgNKWuAdqU9BYRLYqvGKL+ZwVR5OPoAza1XE/hmDliks490hWj/bI0D/kGwdUUWphHiIHWRq9PVOQ5zIw9ZKhr7U5uUd3goinObfQuYSHc340pWk8lpYZ2uEaeru2UuCguZgT6DmwIz5ymvcHHyQbGb1iF9Q5ZyK1zj8ykGbhVHMqxnPqhmvj+CwE/NUzt2bijd0S7/hMbfRhPyb7hXKtq0VgfY51r5XuWB5klmbtbhgRd+gvLQX+Wmd3aBDnms4P2tEtTkBfhus7zKstKkO1FWHh2vFnKNTAWSd3c6cGW0DXiUZJZalSTW0xz1k8ZoVl3vRu8dkHXFW6SSCfCGZ0ld3dazIx7ISSrY11ARDf/nOL5GQJA+/KB5dgPO43CEfDWnpOtWCXT+5P1+C/sBVz3e3B8mAY9ud2hu6qT73Rw8VZqueSuhp/o9po7VA694OXPVId2Xfu/cc6weu5ghqAHvv6NzVL55WTGz1EUELCjW0+b8vL9cr+Lff/c7mPl3X+E3cBprv5jHPVRaIvQrgTC/fhhNK2Vjxq8ObtO4g++iNwoaEh74fg7F/MUDfZTX1fjRutjGmXO9GBwoYdDcEsQCaeK+gfUVPGwvJb7QXlOZ1rILQBkH6C5ySm8n4YQ2usP4JscqGnSb8OCTcFT4r/skhq7NquuKzWFfvWlQbglaEeYApHYKy5KTFv4I85fA1Y+Bdc+0a6msaJXh17qa0DpuxRiFe1Er1r9XnnCnbjEiXsjukXzHfP0H/GvVLNProRFULrWe7GZUngWRNYTDwblZh4IyrCDVGz6zXLUmnR+NPLyc8LOBCs7TFbDeZS4071zPkmwNP/VK9UEJ+vTOFM0vdS0nWW1F2f6TGglvsDj+nK/6vPD1sLpBktqlL5zJswyEsVh/7EcS+L2GSU0TJ2VolrwDN9A+fTXNM151mZ80WTWys/2PVWm2MBiGaZiCR7wV0af8ilGqg3dduBo45JTZpk8s4QTd6kBCnWiXv+hDhFRlV+YrDps7rfkjiwm0Ba4kVBpc+0KfaEdukK+bRPqGI1HoNbmB6E0IERB+jEuky2DWnEvGXOb+AsIk9KNq7x3Ow03DveX1Q76ZjWr7fNO/1xLqAwkmBQ5Zsm/lY4AeJ/L/0i5/Dc5JH7C+heU61UtuIkX/CpdTAthR0jDzLWjZrg0OfSvajhbkI2F/7NnvYLbyFX6DD+j+FD2/XwF+8Z/wn3/5x/iD7tZo+tNNNZo5laLWv7vBIWXHBbpab90rrRU+Ryo3bQJZXo4YKzYLw+q2riNl4bJF5eg1auGGytr02WGMyVe8CapeG9SuNVK4pP7U3Cchpeeap4nUeTOFIgOLhXXzUeSXXMo60Uub6G79Sjz5mx87mUs7i0CWeXz+YvhpauMpC8kwH1im9yDUuUCi3Xy3Px9ylmugyTHiOhujBaEHSekGO37/wJwx4UfD6BFIdff7ntBgdrteQBEaIVHcbLjm3Gy2Aiqvr43mm56cNUx0cVIpYmke8zqgM5VkQZMXvHjrSm9uTNP8Prh8witLj/UdO6luySIAowu4Qmt3nnhfbTcpU2ezvy0S+NMCu/Vr9lrImiR5JaURnr18/icRNt6pmcXgZ6jzm4XU+Zds9kztrOjOYf3IiFpkyu3nzDlDeNUiX2STT/KyLDNNPnyrduv0MEmPuG40r4nBHS8X2Esf/rQ7VV4b9yVNH2y6YjRKRRrBzHIbUzdO4cnIMPhsgGCy0nw36N+Vy4/SzILehrBlbxnTZLpy0iTTTVO1/j7L8TUCc63ONZS+iTvX1IN7Z7+bCbyyWRtontUlVdrXZHq+3CRM8F3tRNSN9xoDCbj8NTInUw2iCPUi9JMRoZIK5vMjC5bTgukq0Sm9FvhlVV8z2qSv8/u/+Qtc/W9/D/y//4u/o6YuzGDo0a8DZytY/LedfuOT79ePMPXdSdwe7cKvJ7HAT36Knsof45/+4i/wV785iX99VCa64brqdui62gw5Dyi+XcGTrRIMrTHKDqdGjVP1+qZM8W6Eg/d4lR0LcV2fLE7XhOr76fkyCtbq65d9ZT4vrIRj4kfpSymyaY4A4q8LkRQKskb46UTyEjn7m0shOlQqP07xYug5OgOY65Pzi2WnCpmCYVuXtOf49q2wppgzV4a31DFGVvhuhBbwhoQOVRu86c0nPXbGrsFJ11x8h87AJXkzQ8faszdkts81aEQm8PoTaM7m8kzGaf1w3RLv8HBWPULIylxn7VPORBHLV1Mfm8QBiqNbHWdX8L7bOj+6YMXXqnNG0+UT1hKo87P71mHl6G0sWLyZN249Au5eBlsk8LsaOhbOTau1psJ8Kr+oAhPXTkRTkuowAreJa+xXIZzgyaeQBayDX+H8cbqaLzkZzlpIumZUt4sIPmsPnXbSrs60UTMU6r9/7ZaoygT93aKKJ0Kub91w6jGlavyGTGQ+HDLjm+tQa4Dbl2Qyt/efzCcQXsNocbE/dzcwyG5CBR51IxjaDclaE/h1yOJl1+wDOV6Dily76o9LGkQ65mOMr9euoRuGSaWbY7SSnGKZrMon3bfU4aRA+TqjsqwuKTCswVGxktjeDikPDpZwpZ8O0Hlr3wgFBKaBOUnFgoxOCCeqhWlBtFg5VZr/36VHh8jlUGmPDHMdJNc6bebu6dP5+yexfPg5Vvsv2pcfdYr7480DoldG6Dnwu3+Ixd91sxf6OjqAPwve906lf4oTvz9Z82KAuuoO0nW3pdSvPGsv3QSVFvY1DBpLckV9tokLUA8FMY4Id+T+s5QvwG/MzSiBVB/sc1uW9xW2dIV5ioAj1oWIrRFMlFnmpXi6itDwxdWM0s76F3lY+04HM7WQn0uvPZpCdIRvjWMrbSem2tNXaxIOrK80W96H0bOl3lW5QHyirMek3jEyPLMBWmDmkLnS0mr2PWFfoUngm27HS1l7aOwFTWZ6QhuIYVzW7yWcqShBU6AdqJNGrF2iizWEG7MDDHBv/zKJnpbbRId+fTmxfzKX5+duZnkT69HR/5+994Guqrrzvn+xfW1nAMVSpKC8BmQsIilQigihGDRtI0wJFt7VqUMmAa2TVdohOrwrjoDiBGizHl9NHktXxn8kTab1Wa8IwcLQaZT4KlCKCKw4SC1CKBqKPIwoWGv/kHd99zn73H3OPefce5Ob5J57v4cVzr/997P3Pee79/7tfUJ/+0inzRD81Pyc2DLVrrqt0zU6XyRgWU6dPd2pbJ0Xy6rKBpk21+pkjtVJ7bp/9nnd3d3d/RMVY+lPAqqymSuq9GfkaYxLNR79vvKaxjiiGFQ2lG/sgejuMMj08mCdzPQSYvpIoH8I8FnQH5zdpnZ4b3jnyzipUI3YgG8oOY5y94CCP3fLnjknARIgARIgARIgARLIAQKX5EAemUUSIAESIAESIAESIAESyFkCFPw5W/TMOAmQAAmQAAmQAAmQQC4QoODPhVJmHkmABEiABEiABEiABHKWAAV/zhY9M04CJEACJEACJEACJJALBCj4c6GUmUcSIAESIAESIAESIIGcJUDBn7NFz4yTAAmQAAmQAAmQAAnkAgEK/lwoZeaRBEiABEiABEiABEggZwlQ8Ods0TPjJEACJEACJEACJEACuUCAgj8XSpl5JAESIAESIAESIAESyFkCFPw5W/TMOAmQAAmQgEmgY0O5TNtw2LzEYxIgARLICgKf7JNcnG6TqiV7ZM7G1VI6IpkYzkjrvStkZ9HDUjd/uMfDYamfu0nyQ8LCQ/qp0aZfK7y111bLvmUTPOHhFGHul1u2l0mBc9c/HoT94swmWT7Fdqjy1iy7HH/eg2J5Oolwvb70OeJbuk2fiRRWWvk6u7VGShqOxm4keaT9K+cHmmXaSvGkD3f88x6LAvdrpSV2IeHR4nUGM6/rlOuHEUBv/BrBBB+mnlcRb5kHh572O4rHKbnTqHPxvwcrVlWHTi4M+E2ISMK67ZP68WWy45FiGeZzK72X7N/0kRRC7be0pZCm3jo1ysj12+5tuGnyH1zHrN+V+D4X0lC2eLY1j3TXxcDnXVBmD8uL20QWr/N7Z/j7Ufltn+GO13Ya9DvUIfndD+anffntw96fPu4DuSR6D8SH5ZeHOFcqvra4y4ku6HeIYpLSu08/j8PqlXZjpMKvDhm3eUgCUSfQJ4L/7N49smveQqlLSuyLyIEdsvbIOFlV7RX7Bt4uNCLcwsa6i4f0OJmzUaT13nJZawqCI7UyzRDPcG89RCbI4spNUnJvm/GgniDLt4vUzy2XevulhIfZUqmWHaPOiIidthHFUre9WEUd+LDzEWFOTowXtnPNOMBLfN/2GIezpxG3yLD5q2XffMOhfRiYhnin0rG7TTUgYo0cy9HZrZukZd5C2RdaXj4PSJ84RKyHbKfvvahcHCerjAamqgdvBQhbu6zTmrOAF6R+AaY1LjMwo26bl+OPY42iwqJJKYt9vMBbRq+ONaLjIwi8kjQD9fIODMZzI0XB5PHd56eu+oC62RR7trrumSlJ9vdq+unl8ek2qVHCzPPcHV8si6XN6jBYWe7uOJiHThnredfzsj0jrc1tsrisyaiL1jXkaOlcj9hUcU4QCWLnTaMXi9OQPCwtDSKrNqLBGyQuV8i0BiMAHbdxKXaow0u+wRHzm/xR794D7ngKllXLmLkN0jo9pHNvSpns215meLTfEWV2p1DY+1L7CuWmHfnv4+qV+cxWzwlPQ9E/GF4lgcgTSI/g9xWxnoe+g8otppRAbLYeyGuXlMta211c79UoCG0IjRo5ZogxJVbHz5AdI4bLsEeapFREwnpddDIgoJ8+WS4tB4pl8UlP77nrgV8rJWg0eB84B5plKUSgelml2jOS/Mt42IiY+Ndpd/an2+SpbcVyp9FAcO6ZB67yib2ALMZnpMXvJS3ecjID7J/jsJ6dXUZdcVLjLSPnRi8OUM6q0dgsJXObXQEpftNdl6y65+mNinvhwEuQ2FBiwvuCtOvXKHdc6TnDy7dBpDrkhW1EFCuT+DqsGkbbvNc9L3eBqDkqLfMOy/IplrBJzp+RiB4falHmTWOPA4zzmJa8oG7snhobiXEEk1UP4iJ1BKi+A3f77ZG7WjlujxLqu9irdIo5AqrZxFzF19sQN/YzZsy6Jrlzt3vE1Xoel8mO7ZPkFd+6ZnVqyO5mqTpZYo/yeusN0mX/DirzY4lUz/sGa3R4SixfO0ZvUp0/rjzoNM60BbXDFcFZ8fmPMruic046Nlhsl6uOkuFSar9/tAMwdo886zv+e4SnRlH9nm3peB73yXvA6jyr2XtGSuNG52P5jD03YtfE9Z4V2WU2zHyf5Va9do/M6/BQfsk/x7Qv7kkglwikR/ArYsm8RONfWGe3Nli9+4aIVw/K9gaZZgon8yH47GEpVaY6lngorKx09ey80n5UCovMa/5FWrCsyTLpmeLpPfe0+tXD6qQRBh6cyjRGmzJMkOXr9su02jaZ1WfmDfEvW50i14NSX8TeJQTc5aMYqxd/rbTEPVzjy0mkLb6nzIzLc7xYnQenGbd9RbuRZt9RDfXSSsVczJOwVE61KDfSBO/Wyytf7sQL7rQ7wK6TRx0zLPcdz5lLbOCeFhyTZBjy+OwoqXOZo+XL2BEoF3/TKlUH7HR6Ygo5tcvn2jLZEeLKumXEHVdfTM9t8tRWLdrM6/oYI2lNslyfOvtE/rTD8DqlXIGD2aGovZ4+JDulWBaPb5MXD5RJgTbT0/fTtk82L/4Rnj2J8bGp/jdTugoxNk5K2g/J2fn6WYUAPKYrthAUjC4+ojsYUN410qqfy6FuKkVqmwViX5k+TmmSOzeUS/2BJlk+Cr3++fL0div+0kcWSv29bXLW7zk5s0TmNNu9xXJIdh4ZJ9JcI62j7Mbogf3Sgs6d0adiFDCq0D5DViPduhOmuktqliDOhfKiHrEVmDO22SO8Me/OkRplLpannfxrEze/UWWrwY7R333qGZCaCatqbDkjz+iAGSerKvNlbVxjWafO73ms76W67+l7wPj9+0YZ60iK3XbHFevEs37DnQE9/HHvWydA+z07tzyuHDs2rJC1MK103MYOWjwNC+tOsdwZc8IjEsgJAmkU/D3gdaBZ2aWjF2bss+UyDQ/QRV12r3WZ1CFI+0XjvEyMaHSPSKHusXIeoiJyxO8B5BXBOjB/EeHq0Z1nuK21bPj9hHbN1klS5+n11T5j+9TEszW64Bn29jRKtGB0HqLqfixG36P2Bll6BA/lZIaQ3Q9v3/ACLrp62eBGlamPaE8mzQFxpP0yTMhUo65JCpCuuc3y9PYSOXYvXizorTQFVO9jVw1fhKt6yfAyKpeqrfa8FCV0Rspi8RHLiqVblHShMdXgqf/zqmXHaDOd1gscvb9KtJi34o7x+0BDI/GoT+G8YpGGHdIx35wfExdg3IXk/cX3pMYFhgsH3KMxuKRMDa9dKKtHd0rJ7tgIg6//XlxMPi/JReIWiCLidH4Uy9PrwsMYNn2GFDacEtQJZ54F6hPEkd3g6Xi2WXahEefqoUVdiz0XErp5pFqZQ04zk7MtZr7jfVa2YLTM05CG2WRpWb7qOBlbZJmF4n1QZXekdMEksehhGSYxwa/K9MhRe/QN9bNMup4tV40PmC4WbNfpwr2mwDllQWYuZnZix7a50JE2x2QUz7jSrmaZtsRjPiTm79D+/Sxrkn3LrHeONaIAc9QGZUaINKvydo2+xGIOO4r7zduOY0I7wHdS7wGfZ48KznqO+M/NCIivN5fRUbJxpFQtKZcqY37b0sDGkjbjNSK1n5nGFR6SQE4QSKPgT1bEjpNVCq1td2n0Cu3YWiPTllg9pNrOHC8aGT9OWrwvaLs3Z9W8ZtmJB7t6iNqmEt7JW56ixANVmek4AuaMdCrha4sUj5h29ziECA48SGoPydmEgr8n4tke9vbkpVenRZVGj15yIcWJDz9voT3Afh4y8JoyIbPTNWWqLJZaZ4Rj8bpwsT9mtO4lTTZf2nY3Fq5pGzsLPb7XTlWCDfyTMRPwe8nD/E1t6oVn9cjWpdDLjZG0hJPwR5fInfNWyNINhkmKC4MpdAxOCf25AunByRnByN/isgkybFSXFDbsl45lE4xJ+94gPZ0Adp226r/x+8WzwttznFRewsJHWmyTSBUvBKI2A+t0zS/xa9i4cjJikswZ3+wa0VAjCPMW2nm35kCt2hgT9y7/6iQZNwGC0KdBGh++cWVKiaxqXiFL0euNNI2YIKuLaqTk3j1SeMQ2XzwQc69HAfGMxrwQVT/tkVvnWTWvWp7G71c1lGzRbc5XUmZ7KFOjPsai8DnS7wCrDJ1OFvGa4vl4dS7hnSOy68gKqR/dJMsfWW3dUWaadt4dt8kd+P3mk/LZg/dAUuF6HMU1SDw9765GodPB5gkEp5hrtFGkaoluTBm/R5dzq5yszjDD3EfNVXI55AkJ5ASBNAr+oB+dydEcmjR/jPYKPeiNwvCs7mmyH35zNlbKnNoGaT09wREcHbs7ZVV1mYx91hL8OhbVU6N6gfSV+L3VODDS4vSgxrvFFfVS8b+lemMcAYYHySNWD3aA8/RePhJvV26Z0vhFE98gK6yEO+9Ly8fv6S45bl92GlY+ztJ5yXlZBwTqaw4Et3G9hgEBJLjc+WyNTNumV0VC3Y6ZoSBtWO0I2+JK03bkjBx7S6TF6NmMm/vhF682VTBFCHrzYSa2pEYKx1tCFV4LFpWJLEkwSc4vDn1tW61Mw9yT7eYER30zPXs0VhbP3SSti2K/12RCTsWfZValy8cIPaixCXMeCEbVwBklY8Qtgo0Q1KEyEcAqX49YQhhlrkZcljXJ01JuN2iGW5NFdaeFEUiivISFv2N0jZTEraYUm4S6dkmNiDa1MeL0Pxwus4rGyVqnwyTW8FHu1W87X25x1T1PSAndWL28Yat4ucScGbz6vU4yrljplSMwYbMuD5u/UBY3wF6+0r+BdhoTgivtSeCxhhR63VVDSQVjNJog/J16YnOdVy0Fao5AvMmcO+2x9xxG5WJi38hCEodnt+6X4+NFCovKRFbGTKdUB1dltUhtjbQmOa8miegMJ714Dxih9OTQbJCo53vAKIa7gy0gphHFsrpyj7Vy3byp/vXC8Wo1rtwzP5ybPCCBnCGQRsHfU2aW8B8LEdVgPUytoefDUr+kWWBXWoqJqxjqXdIsY+3lBwuWrVY/8g5XtJbg2rVNt/xdN8PFoI94dpn0OKMBfi83Iz68wKo98QacBooWw32cOYxxzy1ubeFu3ncdx15UuIwH7lPqPvhbw956iFQSvuBdASc88behDLbhR4C+DQu/3tSEsffMQf6i1Y5YUC8nTCizGxOutKEH01mFAyYJ1TJ2it1zrHo3a6XKtWRsfHoCG6lTyuTpeVimVQtVq3dLveiceSzx4YVecYROqKte3rRXwVJpTLbXFFGm5s8UEPAdJhSclcNUzibILfNEljoi2JNdezK8aeqmGloYvZtfLJaYr5V6KZYWNAp8R0lC8pIgfE9qrFPYmMs4gfninHUzZKcW/b6O3ReHjc4X0SMaroaP25115n6+qedP3GRxHzdGg9gvVOtaUOeCOXqJBolI4XhjHoTd4bArbi4CQj0jrbXN0nKkWa2YYy2R2yT7ghLhmTtjzSETkWvhwTNKETY6Ya9ItEu02RJ65RdK55L4BoOTFKcz4rC0tI+UOdeK7JRJsrhyj6hJr9MPyVNvlcnqZRNk2PQuqTLedyKxBpATXo8Oev4eCH1feXrrkTTz94lOM2Wiixs+9d/MSlgHm3ZnpUVk1boy2bmy1jIHds150iNihomVYwqHUOyRHh0g9ySQAwTSKPjjew78+WmTHn3X7pEx7aJtYWc+MESLn7meIW0djNpbjQes1OPa1IO7WcaUxUwmXPeNl4ASwm+Nk11irq2MNGpV534pKPdeQXfaeMi4IhKRrlOya/xIsQdwXQ9Ft9NEAh7zFFLp4XeH7j5DniD67eFl7wveTvMczzcC3GF4zoyeu7hGiyqPVG34D0v9SmtZUf1NBDz0a6TS59sNnrT08tQR+KiXc8sd4e/YRJvha7GPa7oX6iQETZDwtSZQjlnnd99qwGLCtDnJVPV4zk1kkmImqv+PrTTWSv3MhyWVnrWe+gvPodWrLXHL9AYwRH2XNveqIYhgvB7NsSfDNuBZpK/FpyAwLwnD94Zlmz+WVYus3CQCc7N1p6xFAoKjjwWiTNI2ybHTIqP0ksn67giMduxR9wpUj7p+vhnPnyTchIpBHZfeG+Iw7tmgGjYzZEf1DKlZgrkgJXJMTQh+WOY0r1CrqrkmfKvJtm5xiWhC06MbvUq0iyyeN869VKhOZ8heNSCdZZ61w8NSr4Wkd8QEzw57WglM644XVcotJ63RaUsMoxFlPRPVc2VEsdyJxj5M4xbFRlh1TH2zD38PKCEetzS01fgLtuG33+/mctl24t0jJz45shtI3juqA2ZbzDSrVJn3+Ih+572ONBrf3bHfP95weU4C2U4gjYLf3XPgDw4/PNuOGA6MHttYL5kl7OJeBHavrxpOD1oNRwt7c4jd75pP4vQLAvHWzYw9nC2n6RsSVPaztj32WZ90pHTJ6TGCL+MFnVIg2rH1oldnnpVnkObCokZ3FGcAACAASURBVBIpnV8spbAlxqbKzviI14E2aR1V7Jhc2a7UUnX6OOEeD2jf3lKMSNRKC/Krzb2UqVWlzLl3hVSJ+dG1hLEk78CuO9ZH1qwXjHs96eSDCnSpei/HyRxvI0uJFqxgVSyrKjtlLdYZn6IbrCirMJvrwNh8b6i6H2dC4us0hYswSSqWac2HZJXqPU3Wa/L+4myCEYWf7a/q1Y4JBCslllAxG1JOCkeNlEKBvXjAxGMlFPOtcgl6FqnAAvKSIHzvc8GZ0D1FYsJU/1Z8Jic7+XAOMKJRK0/tPSNjTx6VxXpZSjuNuLc0dMTI8h/mxhSDqE/+31mwn1F6dRYnffrAatioibkjhluCFyNrEOhT0CBGfcJ6+9q9CDqCgn6Trg4j24tV160TmM9gMQgsy9xirsJmBB90aOY3yE3Q9a6T+XInlnPeYLhQE6mPGhOy9b1N0jpzhj7ph33we6Bnkbs74ZRY9zPlCXlPx34P1m9WTTg3f5swpUUDOLCnH6s7YdEDc7NHTDCbnRsJ5AiBSwY0n3hYbyyT47BhhMhUPahoiVvLu+HhPA1LuKlE4sdeI8cWNck+vyXd4EZNxnlY8pvLVU9s/QasmmAsF+eXWazGMrfcspm143Wc4SE0F2FBbM6QWd5eG8eh50Clw08s2Pazrheux2+mnI4fKZYGtdLsmogKLlgn3HjoKtOqWtg5m8Pz6ckM6oFahSGu3C1zpDENK6TemMinYlV1CWXXLG6zrxTSpMqxSfZtb5J9G2FGYdUr9PLH6mUsPFVfNxyOXbCH/S2BhfpbLtPM+45Ln+F6u/cRPcil8ytllTRLTY/YQmSFlwuWEu2TDRMwpVnWmqtnJRNRkv4g6FTZoHz0n3dYX6/OE/f7tcx6sBhA3KYmurbJUldZnZGzqiFsmZCMWZdkufjlJTR8OzVvddnPPZGukyKrqnVjLy61SV0omFksu9ob1Apot3ga1TBXKtxW6/ntWp0cOvBk3Gi3w+ZXqmdwys+Ck/Y8C7tRr0ynsJqQLlObZctuHVNsr3576lkdXtdjPiyzQT1aaF5P/tj6bannAZb/9D6DAgIqWObzblANF6Me6/q8fbWU+nQGBASd/svOeyANQetvmmAekVFWaARMW4LRjZCvs+slpNHpY7x3nFSB37pikW37Pc973YgM+EAg/MW9V+xQ0/EOcRLIAxIYeAJp7OHvmUmPXu5NfZV3RImsGr/CWcfbWlJuj7xyGj3HE2T5Rq9dox9A3aNg9QagV8j7gsPLoQRfSIQt7MqQ1UqU4LO+qusXk77m7mkMGelQw9VlssN44br96hBje3evhIjXHt49z0DE9TETxwQB4cWXjzVpNxaXPrKGq+1eJW+ajV5v71eMlX8sh9oe8FVaHUEqe7V0K9bUNl6SanTBYza1slxiw8oYJYK5RZPM2lsjJRsOxz5ilFTcR8X8CJyvF5c5lb2m8/RK2SENqoGo/cSNVCkhNyG2RKIy7xDPmtDm/BWENFxKq8tkp21D7mtKpCO097F6hZ5t68usZ7d6HKlTy2yosMjPpMh2r3rIRcaUhbjxC1qnG3NxUtrs/Ib4s8wgEgR67SgZhomYDVj5K/67HBDBMJFpXbTamtjaoCdDW88QNa9obiyOwsr7ZU77emtZVvUb1ukMG2XSbkwGQeFbI1XKFKih1lpqUo3iWfOVYinxHLnqor5XLLfoQ+xh1rOyTXVcaHNC57Z6zk2S1nuNuUhec5Vk3DgBIn8Pi9yb2vKsLQ3NqjffsfVWNvXmSJbFDR1DLYKy1SONlqmf6wvlW32WptXp8xsF0veS2lsjFerr8BubjC+Uw6Qn5Nnheh4nFZFypJ7H42c4ZqDJ+/Rz2cP3gF9QqV5TjRo9PGP31jesEGsEFdzCJ6Mr08qwOFX4pgO7nJzljq17yfHs7TvETAePSSAzCKRR8IcIXSev+JG7TXqs9XP1Qx2THotl7Ur7RaHsGJtjw83KJjpZAWcNTS5XrfQa11J26NGEECudIlK6HS+62KorTlJF4r6sqoaWZ+5Xy/A57jDcHGdeoV8Itiu8tEeIdDzr/fx7vO2pE26AiU6cgIx5cB8h36bGQE+ZIZrV3APtI05AQyRaPYqYUOp8sh5iv1ZkdYIVXjo21NiNNB1BD/dGupZ6v8Lo+lS7/eJ3mb30ME7lzWv+ERKWagBZ64KrryLP93zEzfFq10fn3D6Ie0lZ5ktxX0eF4MIKUD72yejp1svY6o8q+a0OpG3K4xtqng8O+cQB+/XVRkPVTr1rhxdyTKzZt+IazZZoM+fZJOfPFZXvidWQj41WFFaWqMYSPvTlu5nsfcrNmbthep5vfc3bueTJXyp58Q1fBRxQV5xIPQeqUWCOAOA5iy/tmluiMOPLxfRtHSfjRvuC2zLnOyqWqLNX0QqoR6HPNuNZgBissu2dSY9OqbXvUt+aWJuMrbniHTQxOODZEfc8dsfuOvPk1Zpgaj+Pw+ZRBX17BoHjPbUIBz18D4TFi2CNeRmuvKh4rY46pw4oB0hHbOUzy489YoIygD89soObGBVIYaQQdemW3StkLSbVL5ug5nSYH/JcvG61q8Go04xnaTIdKto99yQQJQJ53d3d3VFKMNNKAskQiIk/9wsuGb90QwIkQAIkkNsE+A7J7fLPxtxT8GdjqTJPJEACJEACJEACJEACJGATGNhJuywGEiABEiABEiABEiABEiCBPiVAwd+neBk4CZAACZAACZAACZAACQwsAQr+geXP2EmABEiABEiABEiABEigTwlQ8PcpXgZOAiRAAiRAAiRAAiRAAgNLgIJ/YPkzdhIgARIgARIgARIgARLoUwIU/H2Kl4GTAAmQAAmQAAmQAAmQwMASoOAfWP6MnQRIgARIgARIgARIgAT6lAAFf5/iZeAkQAIkQAIkQAIkQAIkMLAEKPgHlj9jJwESIAESIAESIAESIIE+JUDB36d4GTgJkAAJkAAJkAAJkAAJDCwBCv6B5c/YSYAESIAESIAESIAESKBPCVDw9yleBk4CJEACJEACJEACJEACA0uAgn9g+TN2EiABEiABEiABEiABEuhTAhT8fYqXgZMACZAACZAACZAACZDAwBKg4B9Y/oydBEiABEiABEiABEiABPqUAAV/n+Jl4CRAAiRAAiRAAiRAAiQwsAQo+AeWP2MnARIgARIgARIgARIggT4lQMHfp3gZOAmQAAmQAAmQAAmQAAkMLAEK/oHlz9hJgARIgARIgARIgARIoE8JUPD3KV4GTgIkQAIkQAIkQAIkQAIDS4CCf2D5M3YSIAESIAESIAESIAES6FMCFPx9ipeBkwAJkAAJkAAJkAAJkMDAEvjkwEbP2EmABAaawNmzZ6W8okLOnz8/0EmJTPyf+MQn5Pvr18v06dMjk+aBSOhvf/tbufsf/1E++uijgYiecYrIZZddJs0//rEMHTqUPEiABHKYAAV/Dhc+s04CIPDGG2/Itp/9TK65rkCGDP0MoSQg0N3dLf+170X5j//4Dwr+BKz2798vP9+xQ8bdMFU+PWhwAte8nW4C58/9t5x46SV5/fXXZdasWekOnuGRAAlEiAAFf4QKi0klgb4gAAGLreL/rpWps2/riyiyKsy//PlPcvsNl4rmllWZS3NmLl68qEL8Ts2/KdGf5uAZXAICr760Xf717nkJXPE2CZBALhCgDX8ulDLzSAIkQAIkQAIkQAIkkLMEKPhztuiZcRIgARIgARIgARIggVwgQMGfC6XMPJIACZAACZAACZAACeQsAQr+nC16ZpwESIAESIAESIAESCAXCFDw50IpM48kQAIkQAIkQAIkQAI5S4CCP2eLnhkngfQS+PCDc/LuO509CvTYGwcT+uv4VXucG8SZjN84j7xAAikSQN1GfeNGAiRAAlEkwGU5o1hqTDMJZBgBiO6V/zBHBg2+XO7/0RYZe/1k3xSu+84CufUbFXJT8QLX/fvLiuR/th6UK6/Kd103T1aWzZGtv7aWEDWvw+8zr/oLsReea5QXNzeZzn2Pb7m9XKXL9yYv5iQBNDCfb6qX+zdsVvl/Yl2VU3dxb2tjnaz80RaHDRoDx48cUo3eX7ZtUY0D+MU17/bXQy53/UYQdqePO6+/O+9/1OXPe5/nJEACJBBEgII/iAyvkwAJJEVAi/27/uVRGXP9ZIEA//b9db4C+lvfW+PcR+AQ4x+ePyd5eXlSf98SV3z54yfJt1fWua7pE8Tx+q9e0qcy//N5zvG65p1ScGOROkev7PCrrvFNi/aARkFPRyZ0GNynnwDq1VPr7xGUZzq3rU11cvrtzsC6peNCHfrpY2vUCBIasBD5VT9oVLfrqytUw1a7xR7hwg3Sfcf31sitt1fIsSMHBW7RyNXb6Xc6VX1b3xwbsTp+5KBqBOP3E7Q9ua5K/VaC7vM6CZAACYQRoOAPo8N7JEACoQQgiFqb6gTiRffqo6cePfno2fzWdx+UQZcNdcKAG7iFyC6tqJIrr85XggiNBRyb26Ahlj+IKC3uf/rDh+TW28tVGIgbQgqjAuhdXV46WZ7cGW9ShMYE/gVtuM8tcwigLLf+uF5++Qv/3vGephT16JnHHpK33jjg1NWgsPTI0O/Pv68aHXCH4/XLbldeBl9+hbpuNkrRmP2WiGrQQrjreo96jXt6QzpQd70b66mXCM9JgATSSYCCP500GRYJ5AgBiBb0yI8ZP0meerHTETfIPgQ4RP1PHlsjd96SL3evrBeYzOgNon+s3XPfsbddCX0Id/TaQxjp3nntXu3trwGL3tvxIA70uqJ3deJ0q1ff5U9EOn65U06/fdx72XU+cdrNrnOeDBwB9IBfeP89VYe+Ne2KtCUEIv7r5cvl+BsHVU98WMAF04tcDVD00qPx6q1julGKsNRIUdcJefedE2rkCo3UiTcmX6/aNm10/Y686YMZkBmf9z7PSYAESCCMAAV/GB3eIwESiCMA8xcIoLtW1gkEu+71jHMookTbk+urBD2hgy8bKi/Y9vRXjrLMbJ5YXyUzvnK7oOfeFEoICz35aDygAaDMK374kGoQwGSi/r45KjqYTMC2H/sRV+WrY689PhoTZg+rXzp5LXMImA3CsFShHv5TqTViBD8YGbjr1jHK5t6v0ajNcSD4wzaEq+sp3CHcd7tOiOTlOSNNpn+YpDnxoUHa3S3d9t50l+gYvycnnESOeZ8ESIAEUiRAwZ8iMDongVwnABGuTWeUOc15a8IsejixmfbK2oQH15WdfHe3oAe3Y+9O5a60vMrCmaRQwsgChL2268bkSKQB8QRtMK+APzQMgjbT7j/IDa9nFgGUO0T8+u8skHqYkS1bIPP/YXl6RLM9koTGJeoOevf16FJQnUO9Rx1H4xXmOWhkwm8qG0x94D9o85u0HuSW10mABEjAJEDBb9LgMQmQQEoETKH9+l5L3AT1UkKgaRGkbZjNnneII4gmr3/0sO59oVWlC/7uur9O3n3HmrBb/y9LlOiDfbXezBVQINhghoEwKZY0oezZY7UnjDJhhSiUu1mfeppLXU9RdzCXACNQBdNjjcWxE6YIVtVB3GbjFvGh0Yt0wCQJZmZobMK0x5xUDnd+pj5oyBZgHoBh79/TPNAfCZAACXgJUPB7ifCcBEggKQIQ6HoyLTzoY7OHEsLGK+B14BBH5pKZmOSLVVm0nbKeEImeW4gwbJgbACH2k8ceVHuIpNbGR9U9XEcDZMz42BwBmFvAhAOTNRNtXPIwEaHMvA/R/fyP6+Wu+6160NtUooGJOtz23EYZPGSoHDt8wDUHBPcHDblcXtjcqBqif/fdB1W9Q/3DbwJ1cH5FlZqYi0aBt6Gp/BsT2ZFe/HYufHDOMVULy4Me3Qpzw3skQAIk4CVAwe8lwnMSIIHkCdimD/DQLfYa+ca1sIAg1Mwe0qBJuxD52HTjAIJq5YYtapIv7mE1FJhS3L+4SDUIzDghwuBWL3f4y19sUW4hyLC9+3anMzkTjQdu0SIA8Yw5JBD7WBd/4o1FoeZdyeQOQv7CB++pyehobKLH3Wy0QtRjpAl1D41WNChRJ+vvq5DlP2gUzFnBhnqHugn3cAfzI9RH3Nd1Gu6QB0x+R/37u+89qPwifDRcb/qK9b0Ks54qB/yPBEiABFIkQMGfIjA6JwESsAhABJlCSOylBhOZJEDg9HbDPACIeCzFecc/PaQElTdeiCuIKIgupBONgr1tW5S9N64hHVjbfH659UGl3qaJ/vufQN19FTL91lJVhhgZgujWjcCepgb1wW/TI1Koe/PLl6v6hDoIsY8N9U8f4xx1DBvEu66b+j7MfXQ8mBOAcHQ9RQMBdVN/gwL1Vq/7r/2rgPkfCZAACaRA4JIU3NIpCZAACfSKAMQNBBDEGcwwzA0fKkq2lx3CBz2m6KnHSj8QSVhJxWxMQNzrEQRchzjEV4AhrOAeJkQ3feV2efL796ieVzMtPM58AhDNEMNaGKOsYfqF8uyLDeHDnObJF48rsY65A0iD3rxfj8Z1NBKwmQ1j1FssJ6vrKn4T2i8aqRD3egRA1et3TgjmDWCegvaj4+SeBEiABJIlwB7+ZEnRHQmQgEPA+6Vb5wZ6ND2rjMCOHwIGYgU96hDdEOyY+IjJjKYY0mY7CA+TH1f+aIsSTbiOc2wQRc/88CEl2rF+/v0bNsvY8ZOV+EKPP5Y3hICC2FrfYpkDoVEAO2ltboEGh+4txUe/sNKLXnnIzAuPB5aA1/7dTA16yHUvub6O+pJoQ287PpCVzAazGnxvwq8hiqVgUXeCNjRG0PhY92P3l4LRKFH1c3Oj+hovTIK04McIxYXz59SKQwgXbhE3fkMw+0GjNZk8BqWJ10mABHKXQF63WjA4dwEw5ySQ6wRefvllmT17tjz4xHaZOvu2PsUBEaQn4HojQm+muWlRjoaCXmcffhEGRD8aCtpsQvvDPfjDdfjz3tfuvPuwdHnd/uXPf5Lbb7hUHnjgAXnoocSTgb3+c+l806ZNsmjRInnkuVdl3A1TI5l1b73UmYAQ96vLpilZUL3qj3qKdL760nb517vnCX7js2bN0knnngRIIAcJsIc/BwudWSaBgSLgJ5B0Wsyefn0Ne4h28x7CCArHvJ6s2Eccpj8zbh6TgFn3kqGhR47gNqhemddZT5OhSjckQAK9JUAb/t4SpH8SIAESIAESIAESIAESyGACFPwZXDhMGgmQAAmQAAmQAAmQAAn0lgAFf28J0j8JkAAJkAAJkAAJkAAJZDABCv4MLhwmjQRIgARIgARIgARIgAR6S4CTdntLkP5JIOIE8vLyVA5OvNkhl376ryKem75P/sW//EVForn1fYzRjeGSS6w+pbf+6zX56MPz0c1IRFOO3zQ3EiABEgABCn7WAxLIcQKDBw9WBBr/R3WOk0gt+0OGDEnNQw66HjRokMr1htV352DuMyfLrKuZUxZMCQkMFAGuwz9Q5BkvCWQQgddee00++OCDDEqRlZRXXnklI9cP/8QnPiFf/vKXM45XJiZo79698tFHH2Vi0pJKU6bWwaQSLyKXX365TJkyJVnndEcCJJClBCj4s7RgmS0SyAYC+fn50t7eLthzI4H+JnDu3DkZM2aMvPfee/0dNeMjARIggbQS4KTdtOJkYCRAAukiAKF/4sQJqaurS1eQDIcEUiLQ2NgoEP3YcyMBEiCBKBOg4I9y6THtJJDFBLTIam1tzeJcMmuZTEDXwS1btmRyMpk2EiABEkhIgCY9CRHRAQmQQH8T0KYU2GPbvHmzLFiwoL+TwfhymMDBgwddtu/Hjx+naVkO1wdmnQSiToA9/FEvQaafBLKQAHpUtdhH9tjDmoWFnOFZ0r37Opmsg5oE9yRAAlEkwB7+KJYa00wCWU6gqKhIXnrpJVcuMXFy6NChrms8IYG+IqDr2vvvv6+iwMRx9PJzIwESIIEoEmAPfxRLjWkmgSwm0NnZqcT+zTffrHI5f/58tWcPaxYXeoZlDXUNQr+iokKlrLy8XFAvYebDjQRIgASiSIAf3opiqTHNJJDFBNCz+uijj8qIESOU8P+bv/kbefDBB2Xy5MlZnGtmLZMIoK4tX75cJk6cqJJ16623qvqne/0zKa1MCwmQAAkkQ4AmPclQohsSIIF+JwDzibFjx8rjjz8u3/72t/s9fkZIAlu3bpXS0lLZs2eP3HTTTQRCAiRAApElQJOeyBYdE04CJEACJEACJEACJEACiQlQ8CdmRBckQAIkQAIkQAIkQAIkEFkCFPyRLTomnARIgARIgARIgARIgAQSE6DgT8yILkiABEiABEiABEiABEggsgQo+CNbdEw4CZAACZAACZAACZAACSQmQMGfmBFdkAAJkAAJkAAJkAAJkEBkCVDwR7bomHASIAESIAESIAESIAESSEyAgj8xI7ogARIgARIgARIgARIggcgSoOCPbNEx4SRAAiRAAiRAAiRAAiSQmAAFf2JGdEECJEACJEACJEACJEACkSVAwR/ZomPCSYAESIAESIAESIAESCAxAQr+xIzoggRIgARIgARIgARIgAQiS4CCP7JFx4STAAmQAAmQAAmQAAmQQGICFPyJGdEFCZAACZAACZAACZAACUSWAAV/ZIuOCScBEiABEiABEiABEiCBxAQo+BMzogsSIAESIAESIAESIAESiCyBvO7u7u7Ipp4JJwES6DWBY8eOyRcmTZIPL1zodVi5FMAzzzwj3/zmN3Mpyynn9bXXXpOZhYXy8R/+kLJfekgPgcGDh8jrr3fINddck54AGQoJkEAkCXwykqlmokmABNJGoKurS4n9oq//vYy8Zlzawk1HQPvat8l1BdPk8mFXpiO4tIRx8eJF+V8/qpE33ngjLeFlcyCdnZ1K7F//t3fLXw8bGbms/un356XrULv8nzfeJnmfiN7r8v23fyNHX/iJnDx5koI/crWPCSaB9BKI3hMsvflnaCSQ8wT0IN/N8/9eps6+LaN4fOt7azIqPUjMX/78JyX4NbeMS2AGJUgzuv7rd8tnr5uaQSnLjaT8du92JfhzI7fMJQmQQBgB2vCH0eE9EiABEiABEiABEiABEog4AQr+iBcgk08CJEACJEACJEACJEACYQQo+MPo8B4JkAAJkAAJkAAJkAAJRJwABX/EC5DJJwESIAESIAESIAESIIEwAhT8YXR4jwRIgARIgARIgARIgAQiToCCP+IFyOSTQKYQePedTsFfT7aOX7XLhx+cC/UKN94Nfvyue93xnATO/65T8MeNBEiABHKRAJflzMVSZ55JIM0Ejr1xUNZ/Z4EKFUtp3vqNCt8Y7i8rkltvr4i7v+47C+SpF8PF2MqyObL11/HfCdR+B102NC7OF55rlBc3N8Vd91645fbyuDR53fA8WgQg7p+vKpI7nrHqVcezdTLkc/lSsKhKzh49KD9ftcC5h5zB/dm3Dql7pw62ywenjqv7+xvXiOTlxWV+avmDzrU3dzTKmz9PXM+u+1q5XFfi/9twAuMBCZAACfQBAQr+PoDKIEkglwhAVD+xvkrWN7fL4MuGCgT47y+8L1//h+VxGFZu2CIQ/dgwGvDTHz7kuPnWtCucYxxMvPFmFabron3yxLoqOX7koDobe/1kWbfMamzgwl331wmuYUMcw6+6JlTMI/09HZlQkfC/jCQAcT9qcpFAjENkQ8R//r5GldbdP6ySIvtYJx73O1/ZIh9fOKcaBn/76E51a3/TQ2KKe1z0XkNj4ZrCUhk2zqp3Okxzj3RwhMEkwmMSIIH+JEDB35+0GRcJZBEBmNNAsHfs3amEuRbZEP4Q9R172+Wu+x+VK6/Kd3KNXnjc39pUJxgJwN9dc/Ll/h9tUW5GXJUv3p56s5cevfx33v+ofHtlnWpYYI/wIdj/qXSyPPNqvFlQXl6e4F/QhvvcsosAevD3bLhHZQo97/hD772+hjJ/rekhJfBnfrdOuUOjAH+qR9+DY2qF+wNwEPzeTdWzsLoUds8bGM9JgARIIM0EKPjTDJTBkUAuEIAIf/L798gtC8qVgDdFOo7rWw/KTx9bo0R4acU9Mv8fljtCHvf1F3Qh/CdOL1I98mgk4HrBjdYIgOZYML1Irrw6XzrK2uXvvvegoFGA7abiBfKTx9ZI1Q8aBekpLa/SXlz7jl/ulNNvH3dd855MnHaz9xLPI0wAPe26hx7ZaP9Bheql9wp3M4tdB9vl1KGX1B+uQ9TDBCfZ7df/sVEuHRxvVmb6HzWJ9czkwWMSIIH+I0DB33+sGRMJZAUB9Kb/sm2L3L9hsxL1XlMcM5M/3feeMvf58Pw5wd8Ltj39laMsMxsI9uJvLFEjBe++c0LZ27/+q5dUELfeXq5679GDr0cJ0BjAJF309OvNtNHHiMO3vvug06CAG8wn0A0M7Yf77CUAsxnTnv6PF86pc9ju+/XMj5x0szL9UUS6u+Xj8+9Zwr07fr5IGLUZ362LhRPmkPdIgARIYAAIUPAPAHRGSQJRJgDxvdI2wSlojq2cgx59bF5xjR54bDABgl3+8TcOygubG5UQ1+Hg/i9/sVnGjJ8kY2z7+0FD4ntL0ZOP+3ryLhoeSI82J1IRef6De0wqfnK9/wgAnJt2/x7vPI0YgU8NHioQ8dhg2gMTna/WbHZ632Gnf+F3nTJxkVUfYOuPDfb+nx03WTo21cuQvDw1uTdRj73yaE/4HWnHh/kBQRvMh8Ls/IP88ToJkAAJ9JYABX9vCdI/CZBAUgRgyqPNdSDUselzHOM+xLl5Ddch1v9rn9Xrj959uNGTfWEShFV/9r7QqsLDf3r0AMdwr02GMHeAW/YTgEiHeFdiH2Y5JRXyqSGxCeFjvny7QJSf2NWqzHxMUf/rHY0y7NpJgkYDzIC+utaqp4/PCZ/noSfjQsx/vY71LPtrGXNIAtEjQMEfvTJjikkgIwhATGvzGyRIH2sxjmvo0fcKeJ14jAiYbnHdNNXRq/SgV19vGC1QY79isgAAIABJREFUK+p0dyuzItjeDxpyuUh3t7Ta4h+C39zefbtTVj4WMwEy75nHmAwcNlJguuVx5hKACc/uDfdI58ublfA/f+q4dB2wVtzRqUZjIL+wVJ69a7J8aYllq69MgXY0Sv6s2IpPGA24e2e3IEzdMDCPdXjY4/rP7klcz8y5BaZ/HpMACZBAXxKg4O9LugybBLKYgJo8e2Msg3piLIS63vQEW31u7mH6Y5r/BE3axUo82J7/cb3aw4QHdvlbf1yvJgfjIhoBaBhot8qhPTqwvjm27j9GBE6/3em4Q6MlqEGiw+A+WgQg3IeMuEatoY+197GZk3UhzNWymhVrlLiH+MeGHn3Y4WN5Tmyw+YfIx2TePT+skoVPHlTLamJt/0VPHnQaAHCLyb7o2deNBZgRYXlPvQIQ4qApj8LK/0iABAaIAAX/AIFntCQQdQIQ3vjT2+t7baHkWWVH39d72PD//vz7+rTHe6wQhCU9b124RPa2bZG77IaBDhCmQGaPPc7RKDBNezDK8K7Ph8B0GNxHjwCEtZ+4xjr47bVL5NJBlytTHgh/LNUJkx9s2r5eC37dow/xDvGPDfb+ny+pUOFgXgA2NAgwWqA3iHuMDJimPWhMIAwdl3bLPQmQAAn0FwEK/v4izXhIIIsIQDx7Rfu7XSdUDrVpj87uXw+53BHeENz4Q0Oh/l+WqBV1dKMBtvhhIwI6POzh547vrZHBl1+hVgqCGQ/s+CHwdXiIB0t3YsMIQP19FapRcPzIIXUNH+4ae/0UlQ4s+8mefoUla/+D2DYFN0Q5ltLUS2/6NRLgBiMGpj+MFvzk7/KV0Ncf9tI9+xD7+ILv19ZuUY0JwMS1UVPmqEbCYPtjYFkLmRkjARLIWAIU/BlbNEwYCWQuAYhp/aVbbyp/8tiDrktjxk+WsSvr1Co96FHHGv2YoItjfJVXC3CXJ3vy7ZM7LVMdmPOg4YANZjhPrb9Hfvf2cSXon3zxuBL5SBM+vgU7fwh9pA+NAmy4p+NEg0A3LKYXl6p5BvXVFYK4uGUXAYj4/1x9u7O2vpk79MzPWPaoeSnu2Jy4a978UsUa9QVfPTlYm+5g0i9GATApGHv8YaQAX+HFykEI745nWM9MljwmARLoHwJ53d0pLjbcP+liLCRAAv1E4OWXX5bZs2fLg09sl6mzb+vTWLE0J4R3Khv8HDty0OmBx/npdzqdUQMzLNzD1pM4kvXzlz//SW6/4VJ54IEH5KGH4r+4aqYn1483bdokixYtkm/826vy2eumRgKHXnEHYj1ogi4you/pfTKZS8VtMuElcvPbvdtlx33zBL/xWbNmJXLO+yRAAllMgD38WVy4zBoJZBqBZEW1mW74Mc1tcD72ssmmE+e4J+HDc0/9ORHzIGsIQOjrTdvx63Nzr+/pvXkv6DgVt0Fh8DoJkAAJ9ITAJT3xRD8kQAIkQAIkQAIkQAIkQALRIEDBH41yYipJgARIgARIgARIgARIoEcEKPh7hI2eSIAESIAESIAESIAESCAaBCj4o1FOTCUJkAAJkAAJkAAJkAAJ9IgAJ+32CBs9kUD2EMjLy1OZeWnrv8ubh/ZmT8b6KCcXL15UIWtufRRNVgSrGb3x/OPy18NGZkWeopSJ99/+TZSSy7SSAAn0IQEK/j6Ey6BJIAoErrrqKhk8eIi0P//vUUhuxqTx+uuvz5i0ZGpCxowZI5/61KfljZ89nqlJzPp0DR5ymVx99dVZn09mkARIIJwA1+EP58O7JEACA0igsbFRKioqBjAFjDrXCWzZskUWLLC+2JzrLJh/EiCB6BKg4I9u2THlJJD1BIYOHSrt7e0yebL/uvtZD4AZHFACnZ2dMmXKFDl+/LigLnIjARIggagS4KTdqJYc000CWU4APavvv/++oJefGwkMBAHUwXPnzgn23EiABEggygTYwx/l0mPaSSCLCcCMorW1VfWsvvfee1mcU2YtUwnk5+fLiRMnpKioSHbu3JmpyWS6SIAESCAhAQr+hIjogARIoL8JoFf1iiuucKLdvHkz7agdGjzoDwIHDx5U5jw6Lpj1oAHAjQRIgASiSIAmPVEsNaaZBEiABEiABEiABEiABJIkQMGfJCg6IwES6D8CXrt973n/pYQx5SqBuro6V9ZZB104eEICJBAxAjTpiViBMbkkkAsEsCrPoUOHXFmFHT9XSnEh4UkfEkBdu/zyy+W3v/2t2sPEDGY93EiABEggigTYwx/FUmOaSSCLCcB2GmL/K1/5isqlXpKTPaxZXOgZljXUNawQNWnSJJWywsJCwRKdWCKWGwmQAAlEkQB7+KNYakwzCWQ5AQiua6+9VmbPni3f//735XOf+5yatMse/iwv+AzJnl6K81Of+pTccccd8txzz6kGAFaOYh3MkEJiMkiABFIiwB7+lHDRMQmQQH8QwNd1r776ahXVsGHD1Nd2KbT6gzzjAAHUNdTBQYMGKSAjR45kHWTVIAESiDQBCv5IFx8TTwIkQAIkQAIkQAIkQALhBCj4w/nwLgmQAAmQAAmQAAmQAAlEmgAFf6SLj4knARIgARIgARIgARIggXACFPzhfHiXBEiABEiABEiABEiABCJNgII/0sXHxJMACZAACZAACZAACZBAOAEK/nA+vEsCJEACJEACJEACJEACkSZAwR/p4mPiSYAESIAESIAESIAESCCcAAV/OB/eJQESIAESIAESIAESIIFIE6Dgj3TxMfEkQAIkQAIkQAIkQAIkEE6Agj+cD++SAAmQAAmQAAmQAAmQQKQJUPBHuviYeBIgARIgARIgARIgARIIJ0DBH86Hd0mABEiABEiABEiABEgg0gQo+CNdfEw8CZAACZAACZAACZAACYQT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IAESIIFMI0DBn2klwvSQAAmQAAmQAAmQAAmQQBoJUPCnESaDIgESIAESIAESIAESIIFMI0DBn2klwvSQAAmQAAmQAAmQAAmQQBoJUPCnESaDIgESIAESIAESIAESIIFMI0DBn2klwvSQAAmQAAmQAAmQAAmQQBoJUPCnESaDIgESIAESIAESIAESIIFMI0DBn2klwvSQAAmQAAmQAAmQAAmQQBoJUPCnESaDIgESIAESIAESIAESIIFMI0DBn2klwvSQAAmQAAmQAAmQAAmQQBoJUPCnESaDIgESIAESIAESIAESIIFMI0DBn2klwvSQAAmQAAmQAAmQAAmQQBoJUPCnESaDIgESIAESIAESIAESIIFMI/DJTEsQ00MCJND/BPbv3y/nz5/v/4hDYjx16pS6++abb0p7e3uIy/6/9YlPfEK+/OUv93/EEYxx79698tFHH0Uw5SKvv/66Svdrr70mf/jDHyKZh8suu0y++MUvRjLtTDQJkED6COR1d3d3py84hkQCJBA1AgcOHKAg6EGhPfzww/LP//zPPfCZO15+/vOfS0lJSe5kOENzeujQIfnCF76QoaljskiABPqDAHv4+4My4yCBDCbw4YcfqtRN/8daGT7+xoxK6TuvvSCjpsyRvLzMsT7svvgX2fbPxRk3IpJRBWcn5ve//706mv3Pj8tlV/9NJiYxYZre2d8mV00tTuguEx28+8Ze+dXj98kHH3yQicljmkiABPqRAAV/P8JmVCSQiQT0IN9nxhTIqMlFGZXETEsP4Fz8858UI80to4BlWGIuXryoUvTZ674on71uaoalLrnkZGIdTC7lIn/+2GpwJeue7kiABLKXQOZ0m2UvY+aMBEiABEiABEiABEiABAaMAAX/gKFnxCRAAiRAAiRAAiRAAiTQ9wQo+PueMWMgARIgARIgARIgARIggQEjQME/YOgZMQmQAAmQAAmQAAmQAAn0PQEK/r5nzBhIgARIgARIgARIgARIYMAIUPAPGHpGTALZTeDs0YNOBs//rlPe3NHonJv3nIvGQdfBzPrQlpE0HkaEwB8vnBOznqFOmfXKPPbLkunX7z6vkQAJkECUCHBZziiVFtNKAhEi0P6DCpnx3Tq11GfnK1sEov86ESXCfr5qgSx68qBcOnioypFqEPy8SU4dbJf/ffSgDBlxjXy9rl1ebVwj//3Wobhc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"
    }
   },
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### NiN块\n",
    "![image.png](attachment:image.png)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import time\n",
    "import torch\n",
    "from torch import nn,optim\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\n",
    "\n",
    "def nin_block(in_channels, out_channels, kernel_size, stride, padding):\n",
    "    blk = nn.Sequential(\n",
    "        nn.Conv2d(in_channels, out_channels, kernel_size, stride, padding),\n",
    "        nn.ReLU(),\n",
    "        nn.Conv2d(out_channels, out_channels, kernel_size=1),\n",
    "        nn.ReLU(),\n",
    "        nn.Conv2d(out_channels, out_channels, kernel_size=1),\n",
    "        nn.ReLU()\n",
    "    )\n",
    "    return blk\n",
    "    "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### NiN模型\n",
    "NiN是在AlexNet问世不久后提出的。它们的卷积层设定有类似之处。NiN使用卷积窗口形状分别为11×11、5×5和3×3的卷积层，相应的输出通道数也与AlexNet中的一致。每个NiN块后接一个步幅为2、窗口形状为3×3的最大池化层。\n",
    "\n",
    "除使用NiN块以外，NiN还有一个设计与AlexNet显著不同：NiN去掉了AlexNet最后的3个全连接层，取而代之地，NiN使用了输出通道数等于标签类别数的NiN块，然后使用全局平均池化层对每个通道中所有元素求平均并直接用于分类。这里的全局平均池化层即窗口形状等于输入空间维形状的平均池化层。NiN的这个设计的好处是可以显著减小模型参数尺寸，从而缓解过拟合。然而，该设计有时会造成获得有效模型的训练时间的增加。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Sequential(\n",
      "  (0): Sequential(\n",
      "    (0): Conv2d(1, 96, kernel_size=(11, 11), stride=(4, 4))\n",
      "    (1): ReLU()\n",
      "    (2): Conv2d(96, 96, kernel_size=(1, 1), stride=(1, 1))\n",
      "    (3): ReLU()\n",
      "    (4): Conv2d(96, 96, kernel_size=(1, 1), stride=(1, 1))\n",
      "    (5): ReLU()\n",
      "  )\n",
      "  (1): MaxPool2d(kernel_size=3, stride=2, padding=0, dilation=1, ceil_mode=False)\n",
      "  (2): Sequential(\n",
      "    (0): Conv2d(96, 256, kernel_size=(5, 5), stride=(1, 1), padding=(2, 2))\n",
      "    (1): ReLU()\n",
      "    (2): Conv2d(256, 256, kernel_size=(1, 1), stride=(1, 1))\n",
      "    (3): ReLU()\n",
      "    (4): Conv2d(256, 256, kernel_size=(1, 1), stride=(1, 1))\n",
      "    (5): ReLU()\n",
      "  )\n",
      "  (3): MaxPool2d(kernel_size=3, stride=2, padding=0, dilation=1, ceil_mode=False)\n",
      "  (4): Sequential(\n",
      "    (0): Conv2d(256, 384, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
      "    (1): ReLU()\n",
      "    (2): Conv2d(384, 384, kernel_size=(1, 1), stride=(1, 1))\n",
      "    (3): ReLU()\n",
      "    (4): Conv2d(384, 384, kernel_size=(1, 1), stride=(1, 1))\n",
      "    (5): ReLU()\n",
      "  )\n",
      "  (5): MaxPool2d(kernel_size=3, stride=2, padding=0, dilation=1, ceil_mode=False)\n",
      "  (6): Dropout(p=0.5, inplace=False)\n",
      "  (7): Sequential(\n",
      "    (0): Conv2d(384, 10, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
      "    (1): ReLU()\n",
      "    (2): Conv2d(10, 10, kernel_size=(1, 1), stride=(1, 1))\n",
      "    (3): ReLU()\n",
      "    (4): Conv2d(10, 10, kernel_size=(1, 1), stride=(1, 1))\n",
      "    (5): ReLU()\n",
      "  )\n",
      "  (8): GlobalAvgPool2d()\n",
      "  (9): FlattenLayer()\n",
      ")\n"
     ]
    }
   ],
   "source": [
    "import torch.nn.functional as F\n",
    "\n",
    "class GlobalAvgPool2d(nn.Module):\n",
    "    # 全局平均池化层可通过将池化窗口形状设置成输入的高和宽实现\n",
    "    def __init__(self):\n",
    "        super(GlobalAvgPool2d, self).__init__()\n",
    "    def forward(self, x):\n",
    "        return F.avg_pool2d(x, kernel_size=x.size()[2:])\n",
    "\n",
    "class FlattenLayer(nn.Module):\n",
    "    def __init__(self):\n",
    "        super(FlattenLayer, self).__init__()\n",
    "    def forward(self, x): # x shape: (batch, *, *, ...)\n",
    "        return x.view(x.shape[0], -1)    \n",
    "    \n",
    "net = nn.Sequential(\n",
    "    nin_block(1, 96, kernel_size=11, stride=4, padding=0),\n",
    "    nn.MaxPool2d(kernel_size=3, stride=2),\n",
    "    nin_block(96, 256, kernel_size=5, stride=1, padding=2),\n",
    "    nn.MaxPool2d(kernel_size=3, stride=2),\n",
    "    nin_block(256, 384, kernel_size=3, stride=1, padding=1),\n",
    "    nn.MaxPool2d(kernel_size=3, stride=2), \n",
    "    nn.Dropout(0.5),\n",
    "    # 标签类别数是10\n",
    "    nin_block(384, 10, kernel_size=3, stride=1, padding=1),\n",
    "    GlobalAvgPool2d(), \n",
    "    # 将四维的输出转成二维的输出，其形状为(批量大小, 10)\n",
    "    FlattenLayer()\n",
    ")\n",
    "\n",
    "print(net)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 output shape:  torch.Size([1, 96, 54, 54])\n",
      "1 output shape:  torch.Size([1, 96, 26, 26])\n",
      "2 output shape:  torch.Size([1, 256, 26, 26])\n",
      "3 output shape:  torch.Size([1, 256, 12, 12])\n",
      "4 output shape:  torch.Size([1, 384, 12, 12])\n",
      "5 output shape:  torch.Size([1, 384, 5, 5])\n",
      "6 output shape:  torch.Size([1, 384, 5, 5])\n",
      "7 output shape:  torch.Size([1, 10, 5, 5])\n",
      "8 output shape:  torch.Size([1, 10, 1, 1])\n",
      "9 output shape:  torch.Size([1, 10])\n"
     ]
    }
   ],
   "source": [
    "# 构建一个数据样本来查看每一层的输出形状\n",
    "x = torch.rand(1, 1, 224, 224)\n",
    "for name,blk in net.named_children():\n",
    "    x = blk(x)\n",
    "    print(name, 'output shape: ', x.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "training on  cuda\n"
     ]
    },
    {
     "ename": "RuntimeError",
     "evalue": "CUDA out of memory. Tried to allocate 86.00 MiB (GPU 0; 2.00 GiB total capacity; 1.26 GiB already allocated; 17.96 MiB free; 1.32 GiB reserved in total by PyTorch)",
     "output_type": "error",
     "traceback": [
      "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[1;31mRuntimeError\u001b[0m                              Traceback (most recent call last)",
      "\u001b[1;32m<ipython-input-5-cc27c00ed402>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m\u001b[0m\n\u001b[0;32m     71\u001b[0m \u001b[0mnum_epochs\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;36m5\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m     72\u001b[0m \u001b[0moptimizer\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mtorch\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0moptim\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mAdam\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mnet\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mparameters\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mlr\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mlr\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 73\u001b[1;33m \u001b[0mtrain_model\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mnet\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mtrain_iter\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mtest_iter\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mbatch_size\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0moptimizer\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mdevice\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mnum_epochs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[1;32m<ipython-input-5-cc27c00ed402>\u001b[0m in \u001b[0;36mtrain_model\u001b[1;34m(net, train_iter, test_iter, batch_size, optimizer, device, num_epochs)\u001b[0m\n\u001b[0;32m     52\u001b[0m             \u001b[0mX\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mX\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mto\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mdevice\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m     53\u001b[0m             \u001b[0my\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0my\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mto\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mdevice\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 54\u001b[1;33m             \u001b[0my_hat\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mnet\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mX\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m     55\u001b[0m             \u001b[0ml\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mloss\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my_hat\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m     56\u001b[0m             \u001b[0moptimizer\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mzero_grad\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32mD:\\Anaconda3\\envs\\yczlab_python3.6\\lib\\site-packages\\torch\\nn\\modules\\module.py\u001b[0m in \u001b[0;36m__call__\u001b[1;34m(self, *input, **kwargs)\u001b[0m\n\u001b[0;32m    530\u001b[0m             \u001b[0mresult\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_slow_forward\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0minput\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m    531\u001b[0m         \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 532\u001b[1;33m             \u001b[0mresult\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mforward\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0minput\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m    533\u001b[0m         \u001b[1;32mfor\u001b[0m \u001b[0mhook\u001b[0m \u001b[1;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_forward_hooks\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mvalues\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m    534\u001b[0m             \u001b[0mhook_result\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mhook\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0minput\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mresult\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32mD:\\Anaconda3\\envs\\yczlab_python3.6\\lib\\site-packages\\torch\\nn\\modules\\container.py\u001b[0m in \u001b[0;36mforward\u001b[1;34m(self, input)\u001b[0m\n\u001b[0;32m     98\u001b[0m     \u001b[1;32mdef\u001b[0m \u001b[0mforward\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0minput\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m     99\u001b[0m         \u001b[1;32mfor\u001b[0m \u001b[0mmodule\u001b[0m \u001b[1;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 100\u001b[1;33m             \u001b[0minput\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mmodule\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minput\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m    101\u001b[0m         \u001b[1;32mreturn\u001b[0m \u001b[0minput\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m    102\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32mD:\\Anaconda3\\envs\\yczlab_python3.6\\lib\\site-packages\\torch\\nn\\modules\\module.py\u001b[0m in \u001b[0;36m__call__\u001b[1;34m(self, *input, **kwargs)\u001b[0m\n\u001b[0;32m    530\u001b[0m             \u001b[0mresult\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_slow_forward\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0minput\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m    531\u001b[0m         \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 532\u001b[1;33m             \u001b[0mresult\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mforward\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0minput\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m    533\u001b[0m         \u001b[1;32mfor\u001b[0m \u001b[0mhook\u001b[0m \u001b[1;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_forward_hooks\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mvalues\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m    534\u001b[0m             \u001b[0mhook_result\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mhook\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0minput\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mresult\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32mD:\\Anaconda3\\envs\\yczlab_python3.6\\lib\\site-packages\\torch\\nn\\modules\\container.py\u001b[0m in \u001b[0;36mforward\u001b[1;34m(self, input)\u001b[0m\n\u001b[0;32m     98\u001b[0m     \u001b[1;32mdef\u001b[0m \u001b[0mforward\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0minput\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m     99\u001b[0m         \u001b[1;32mfor\u001b[0m \u001b[0mmodule\u001b[0m \u001b[1;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 100\u001b[1;33m             \u001b[0minput\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mmodule\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minput\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m    101\u001b[0m         \u001b[1;32mreturn\u001b[0m \u001b[0minput\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m    102\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32mD:\\Anaconda3\\envs\\yczlab_python3.6\\lib\\site-packages\\torch\\nn\\modules\\module.py\u001b[0m in \u001b[0;36m__call__\u001b[1;34m(self, *input, **kwargs)\u001b[0m\n\u001b[0;32m    530\u001b[0m             \u001b[0mresult\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_slow_forward\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0minput\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m    531\u001b[0m         \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 532\u001b[1;33m             \u001b[0mresult\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mforward\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0minput\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m    533\u001b[0m         \u001b[1;32mfor\u001b[0m \u001b[0mhook\u001b[0m \u001b[1;32min\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_forward_hooks\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mvalues\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m    534\u001b[0m             \u001b[0mhook_result\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mhook\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0minput\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mresult\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32mD:\\Anaconda3\\envs\\yczlab_python3.6\\lib\\site-packages\\torch\\nn\\modules\\conv.py\u001b[0m in \u001b[0;36mforward\u001b[1;34m(self, input)\u001b[0m\n\u001b[0;32m    343\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m    344\u001b[0m     \u001b[1;32mdef\u001b[0m \u001b[0mforward\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0minput\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 345\u001b[1;33m         \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mconv2d_forward\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minput\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mweight\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m    346\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m    347\u001b[0m \u001b[1;32mclass\u001b[0m \u001b[0mConv3d\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0m_ConvNd\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32mD:\\Anaconda3\\envs\\yczlab_python3.6\\lib\\site-packages\\torch\\nn\\modules\\conv.py\u001b[0m in \u001b[0;36mconv2d_forward\u001b[1;34m(self, input, weight)\u001b[0m\n\u001b[0;32m    340\u001b[0m                             _pair(0), self.dilation, self.groups)\n\u001b[0;32m    341\u001b[0m         return F.conv2d(input, weight, self.bias, self.stride,\n\u001b[1;32m--> 342\u001b[1;33m                         self.padding, self.dilation, self.groups)\n\u001b[0m\u001b[0;32m    343\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m    344\u001b[0m     \u001b[1;32mdef\u001b[0m \u001b[0mforward\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0minput\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;31mRuntimeError\u001b[0m: CUDA out of memory. Tried to allocate 86.00 MiB (GPU 0; 2.00 GiB total capacity; 1.26 GiB already allocated; 17.96 MiB free; 1.32 GiB reserved in total by PyTorch)"
     ]
    }
   ],
   "source": [
    "# 获取数据训练模型\n",
    "import sys\n",
    "import torchvision\n",
    "import torchvision.transforms as transforms\n",
    "\n",
    "def load_data_fashion_mnist(batch_size, resize=None, root=\"Datasets/FashionMNIST\"):\n",
    "    \"\"\"Download the fashion mnist dataset and then load into memory.\"\"\"\n",
    "    trans = []\n",
    "    if resize:\n",
    "        trans.append(transforms.Resize(size=resize))\n",
    "    trans.append(transforms.ToTensor())\n",
    "    transform = transforms.Compose(trans)\n",
    "    mnist_train = torchvision.datasets.FashionMNIST(root=root, train=True, download=True, transform=transform)\n",
    "    mnist_test = torchvision.datasets.FashionMNIST(root=root, train=False, download=True, transform=transform)\n",
    "    \n",
    "    if sys.platform.startswith('win'):\n",
    "        num_workers = 4\n",
    "    else:\n",
    "        num_workers = 4\n",
    "    train_iter = torch.utils.data.DataLoader(mnist_train, batch_size=batch_size, shuffle=True, num_workers=4)\n",
    "    test_iter = torch.utils.data.DataLoader(mnist_test, batch_size=batch_size, shuffle=False, num_workers=4)\n",
    "    return train_iter, test_iter\n",
    "\n",
    "def evaluate_accuracy(data_iter, net, device=None):\n",
    "    if device is None and isinstance(net, torch.nn.Module):\n",
    "        # 如果没有指定device，就使用net的device\n",
    "        device = list(net.parameters())[0].device\n",
    "    acc_sum, n = 0.0, 0\n",
    "    with torch.no_grad():\n",
    "        for X, y in data_iter:\n",
    "            if isinstance(net, torch.nn.Module):\n",
    "                net.eval() # 评估模型，这会关闭dropout\n",
    "                acc_sum += (net(X.to(device)).argmax(dim=1)==y.to(device)).float().sum().cpu().item()\n",
    "                net.train() # 改回训练模型\n",
    "            else: # 自定义的模型，不考虑使用GPU\n",
    "                if ('is_training' in net.__code__.co_varnames): # 如果有is_training这个参数\n",
    "                    # 将is_training设置成False\n",
    "                    acc_sum += (net(x, is_training=False).argmax(dim=1)==y).float().sum().item()\n",
    "                else:\n",
    "                    acc_sum += (net(x).argmax(dim=1)==y).float().sum().item()\n",
    "            n += y.shape[0]\n",
    "    return acc_sum/n\n",
    "\n",
    "def train_model(net, train_iter, test_iter, batch_size, optimizer, device, num_epochs):\n",
    "    net = net.to(device)\n",
    "    print('training on ', device)\n",
    "    loss = torch.nn.CrossEntropyLoss()\n",
    "    for epoch in range(num_epochs):\n",
    "        train_ls_sum, train_acc_sum = 0.0, 0.0\n",
    "        n, batch_count, start = 0, 0, time.time()\n",
    "        for X, y in train_iter:\n",
    "            X = X.to(device)\n",
    "            y = y.to(device)\n",
    "            y_hat = net(X)\n",
    "            l = loss(y_hat, y)\n",
    "            optimizer.zero_grad()\n",
    "            l.backward()\n",
    "            optimizer.step()\n",
    "            train_ls_sum += l.cpu().item()\n",
    "            train_acc_sum += (y_hat.argmax(dim=1)==y).sum().cpu().item()\n",
    "            n += y.shape[0]\n",
    "            batch_count += 1\n",
    "        test_acc = evaluate_accuracy(test_iter, net)\n",
    "        print('epoch %d, loss %.4f, train_acc %.3f, test_acc %.3f, time %.1f sec' % (epoch + 1, train_ls_sum/batch_count, train_acc_sum/n, test_acc, time.time() - start))\n",
    "\n",
    "batch_size = 128\n",
    "# 如出现“out of memory”的报错信息，可减小batch_size或resize\n",
    "train_iter, test_iter = load_data_fashion_mnist(batch_size, resize=224)\n",
    "\n",
    "lr = 0.002\n",
    "num_epochs = 5\n",
    "optimizer = torch.optim.Adam(net.parameters(), lr=lr)\n",
    "train_model(net, train_iter, test_iter, batch_size, optimizer, device, num_epochs)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 小结\n",
    "1、NiN重复使用由卷积层和代替全连接层的1×1卷积层构成的NiN块来构建深层网络。\n",
    "\n",
    "2、NiN去除了容易造成过拟合的全连接输出层，而是将其替换成输出通道数等于标签类别数的NiN块和全局平均池化层。\n",
    "\n",
    "3、NiN的以上设计思想影响了后面一系列卷积神经网络的设计。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "yczlab_3.6",
   "language": "python",
   "name": "yczlab_python3.6"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.10"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
